Digital Predistortion in Varying Operating Conditions

ABSTRACT

Disclosed are implementations for digital predistortion of signals provided to a radio frequency (RF) transmission path configured to transmit radio signals in a plurality of subbands within a spectral range, including a method that includes configuring a digital predistorter for predistorting signals comprising arbitrary spectral content within the spectral range. The configuring includes acquiring data samples representing operation of the RF transmission path to transmit radio signals in different subbands, each sample including a digital input signal representing spectral content concentrated in a respective subband, and updating parameters of the digital predistorter according to the acquired data samples to mitigate non-linear characteristics of the RF transmission path. The method further includes receiving a further input signal representing spectral content in a particular subband within the spectral range, and using the configured predistorter to process the further input signal to yield a predistorted signal for providing to the RF transmission path.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/422,448, entitled “DIGITAL PREDISTORTION IN VARYING OPERATINGCONDITIONS” and filed May 24, 2019, which claims the benefit of U.S.Provisional Application Nos. U.S. 62/676,617, entitled “ParameterizedUniversal DPD Compensators,” U.S. 62/676,677, entitled “DigitalPredistortion System with Adaptability to Fast Abrupt Changes ofEnvironmental Characteristics,” and U.S. 62/676,682, entitled “DigitalPredistortion System Implementation Using Data Samples SelectedAccording to Variety Metrics,” all filed May 25, 2018, the contents ofall of which are incorporated herein by reference in their entireties.

BACKGROUND

The present disclosure relates to approaches to digital predistortion,and more particularly to one or more techniques that alone or incombination are applicable to digital predistortion in quickly varyingoperating conditions.

Power amplifiers, especially those used to transmit radio frequencycommunications, generally have nonlinear characteristics. For example,as a power amplifier's output power approaches its maximum rated output,nonlinear distortion of the output occurs. One way of compensating forthe nonlinear characteristics of power amplifiers is to ‘predistort’ aninput signal (e.g., by adding an ‘inverse distortion’ to the inputsignal) to negate the nonlinearity of the power amplifier beforeproviding the input signal to the power amplifier. The resulting outputof the power amplifier is a linear amplification of the input signalwith reduced nonlinear distortion. Digital predistorted devices(comprising, for example, power amplifiers) are relatively inexpensiveand power efficient. These properties make digital predistorted poweramplifiers attractive for use in telecommunication systems whereamplifiers are required to inexpensively, efficiently, and accuratelyreproduce the signal present at their input. However, the computationeffort associated with conventional digital predistortion (DPD)adaptation processes is substantial, which adversely effects thepredistortion accuracy and robustness due to the limits thecomputational efforts may place on the number and speed at which DPDcoefficients can be derived.

There are several challenges for DPD adaptation implementationsinvolving bi-directional wireless communication (e.g., between a basestation (BS) and a user equipment (UE). For example, a UE typicallytransmits (uploads data) as needed and with only sufficient output powerto save battery power. The adjustment of output power level is achievedby changing, for example, the baseband input level, RF gain, and powersupply voltage of a power amplifier. Furthermore, the UE transmitter maybe controlled (e.g., at the command of the BS) to make use of varyingfrequency ranges (e.g., channels) for transmission. Yet further, themode of operation and parameters, such as power level, power supplyvoltage level, output load of PA (e.g., VSWR) can rapidly change in UEdevices. The combination of such variations in operating conditions canchange the characteristics of the transmit chain, and more particularlychange the non-linear nature of the transmit chain that is beingcompensated for by the DPD.

Therefore, there is a need for a DPD approach(es) that can provide highperformance DPD (e.g., measured by linearity, error rate, spectral maskviolation, etc.) over a substantial range of operating conditions, aswell being able to adapt to rapid changes of such operating conditions.

SUMMARY

Disclosed are adaptive digital predistortion implementations that allowthe wireless device (generally a UE, but also a base station) to performquick adaptation (μs scale) of its digital predistortion functionalityin response to changes to its operating conditions/points (includingchanges to environmental conditions). Changes to a wireless device'soperating conditions can result due to, for example, 1) the sub-carrierwithin a component carrier changes frequently (e.g., every time slot,with such time slots having durations in tens of μs) and its spectralcontent can hop in spectrum rapidly, 2) the UE transmitter needs toadjust average output power by either increasing or reducing the DCsupply voltage, 3) changes to other environmental parameters such astemperature and VSWR (such changes may also happen frequently), and/or4) changes due to the fact that 5G millimeter wave spectrum band is muchwider than any existing sub-6 GHz bands, and its spectrum ownership issplit between many operators (who operate different bands within thatspectral range and may possibly use different technologies). Withrespect to the latter factor, it is noted that for new millimeter wavespectrum bands, the frequency coverage of a UE device can easily exceed1 GHz, and as a UE moves from one cell to another, or even as itassigned different cellular resources within a particular cell (by aparticular operator), the UE operating points can frequently andabruptly change, thus requiring its digital predistortion functionalityto change in accordance with the changes to the operating points.

To address the various problems discussed above, several solutions andapproaches to facilitate fast, reliable and robust digital predistortionadaptation techniques are proposed. In one example approach, digitalpredistortion implementations are provided that are configured foradaptability to fast/abrupt changes in spectral localization, averagepower, VDD, temperature, VSWR, etc. This adaptability to fast/abruptchanges to the operating points of a wireless device can be achieved,for example, through a DPD system implementation configured to derive anadapted, expanded, set of basis functions, from a first set of DPD basisfunctions based on operating conditions associated with the wirelessdevice and/or the predistorter system.

In another example approach, a wireless communication device with auniversal digital predistortion system is implemented, that isconfigured to collect training samples from multiple narrow RF bandswithin a wideband RF spectral range, and optimizes a universal digitalpredistorter operable over the wideband RF spectral range.

In another example approach to facilitate quick and robust adaptationsof digital predistortion functionality, a digital predistortion (DPD)system implements digital predistortion adaptation using data samplesselected according to variety metrics. The system may be configured tocollect data (e.g., for storage in a variety matrix) distributed over achannel, select a subset of the data that is more uniformly distributedthan at least some other subsets of the data, and compute, based on theselected subset of data, digital predistortion parameters to weigh basisfunctions used to control digital predistortion operations.

Accordingly, in some variations, a method for digital predistortion isprovided that includes collecting data for a wireless device comprisinga transmit chain that includes at least one power amplifier thatproduces output with non-linear distortions. The data comprises datarecords with each data record including input signal data andcorresponding output signal data for the transmit chain and is furtherassociated with a set of operating conditions values. Each data recordis also associated with a variety measure representative of an extent ofdistinguishability of the respective data record from other collecteddata records. The method further includes selecting at least some of thedata records according to a variety criterion computed based on thevariety measure for the each data record, computing, based on theselected at least some of the data records, digital predistortionparameters used to control a digital predistorter of the wirelessdevice, and applying the digital predistorter, configured with thecomputed digital predistortion parameters, to subsequent input signals.

Embodiments of the method may include at least some of the featuresdescribed in the present disclosure, including one or more of thefollowing features.

The set of operating conditions for the each data record may include oneor more of, for example, channel information associated with acorresponding channel used by the wireless device to process therespective data record, a corresponding temperature, a correspondingaverage power, a corresponding power supply voltage (V_(DD)) associatedwith the at least one power amplifier of the transmit chain, acorresponding Voltage Standing Wave Ratio (VSWR) associated with thewireless device, and/or age of the each data record.

Collecting the data for the wireless device may include collecting thedata in one or more spectral channels, with the one or more spectralchannels located within a wide band spectral range, and with each of theone or more spectral channels having a respective bandwidth smaller thana range bandwidth of the spectral range.

Each of the data records may include one or more samples obtained by thewireless device under a particular set of operating conditions.

The each of the data records may be maintained in a separate column of arecords matrix data structure.

Selecting the at least some of the data records according to the varietycriterion computed based on the variety measure for the each data recordmay include selecting data records associated with respective varietymeasures indicative of high distinguishability in order to increasediversity of the data records used to compute the digital predistortionparameters.

The method may further include computing, for the each data record, thevariety measure based on a distance metric representative of distancesbetween data elements of a particular data record, to respective dataelements for at least some of the collected data records.

The method may further include maintaining the computed variety measurefor the each data record in a distance vector data structure separatefrom a data structure to store the collected data records.

The method may further include collecting additional data records,storing a particular one of the collected additional data records in arecords data structure in response to a determination that a varietymeasure computed for the particular one of the collected additional datarecords is more distinguishable, relative to previously stored datarecords available at the records data structure, than one of thepreviously stored data records, and re-computing, at regular orirregular intervals, the digital predistortion parameters based on thestored data samples available in the records data structure, includingthe stored particular one of the collected additional data records.

Storing the particular one of the collected additional data records mayinclude replacing in the records data structures the one of thepreviously stored data records with the particular one of the collectedadditional data records.

The method may further include computing a corresponding variety measurefor the particular one of the collected additional data records,including determining for each pair of records comprising the particularone of the collected additional data records and at least one of thepreviously stored data records a maximal absolute value of differencebetween the corresponding elements of the data records.

Applying the digital predistorter, configured with the digitalpredistortion parameters, may include weighing basis functions of thedigital predistorter, with the basis functions comprising complex termsapplied to values of input samples provided in the data records, andwith at least some of the basis functions further comprising real termsapplied to values of sets of operating conditions associated with thedata records.

The method may further include deriving from a first set of basisfunctions the basis functions of the digital predistorter, the basisfunctions of the digital predistorter being an expanded set of basisfunctions that includes (d+1) groups of basis functions, with d beingrepresentative of a number of parameters of the operating conditions,wherein a first group of the expanded set of basis functions includesthe first set of basis functions without any modification, and with eachof the remaining d groups of the expanded set of basis functions beingdetermined as the product of the first set of basis functions and one ofthe parameters of the operating conditions.

In some variations a linearization system to perform digitalpredistortion is provided that includes a transmit chain that includesat least one power amplifier that produces output with non-lineardistortions, and a digital predistorter comprising an adaptation sectionand a compensator. The digital predistorter is configured to collectdata comprising data records, with each data record including inputsignal data and corresponding output signal data for the transmit chainand further being associated with a set of operating conditions values,with the each data record being associated with a variety measure beingrepresentative of an extent of distinguishability of the respective datarecord from other collected data records. The digital predistorter isfurther configured to select at least some of the data records accordingto a variety criterion computed based on the variety measure for theeach data record, compute, based on the selected at least some of thedata records, digital predistortion parameters used to control thedigital predistorter, and digitally predistort, according to thecomputed digital predistortion parameters, subsequent input signals.

Embodiments of the linearization system may include at least some of thefeatures described in the present disclosure, including any of the abovemethod features, as well as one or more of the following features.

The digital predistorter configured to select the at least some of thedata records according to the variety criterion computed based on thevariety measure for the each data record may be configured to selectdata records associated with respective variety measures indicative ofhigh distinguishability in order to increase diversity of the datarecords used to compute the digital predistortion parameters.

The digital predistorter may further be configured to compute, for theeach data record, the variety measure based on a distance metricrepresentative of distances between data elements of a particular datarecord, to respective data elements for at least some of the collecteddata records.

The digital predistorter may further be configured to collect additionaldata records, store a particular one of the collected additional datarecords in a records data structure in response to a determination thata variety measure computed for the particular one of the collectedadditional data records is more distinguishable, relative to previouslystored data records available at the records data structure, than one ofthe previously stored data records, and re-compute, at regular orirregular intervals, the digital predistortion parameters based on thestored data samples available in the records data structure, includingthe stored particular one of the collected additional data records.

The digital predistorter configured to digitally predistort thesubsequent input signals may be configured to derive from a first set ofbasis functions an expanded set of basis functions of the digitalpredistorter, the expanded set of basis functions including (d+1) groupsof basis functions, with d being representative of a number ofparameters of the operating conditions, with a first group of theexpanded set of basis functions including the first set of basisfunctions without any modification, and with each of the remaining dgroups of the expanded set of basis functions being determined as atransformation of the first set of basis functions according to afunction of at least one of the parameters of the operating conditions.The digital predistorter may further be configured to weigh the expandedset of basis functions with the computed digital predistortionparameters.

In some variations, another method for digital predistortion of signalsprovided to a radio frequency (RF) transmission path configured totransmit radio signals in a plurality of subbands within a spectralrange, is provided. The method includes configuring a digitalpredistorter for predistorting signals comprising arbitrary spectralcontent within the spectral range, the configuring including acquiringone or more data samples representing operation of the RF transmissionpath to transmit radio signals in different subbands, each data sampleincluding a digital input signal provided to the RF transmission pathfor transmission and a digital sensed signal representing a sensing of aradio transmission in response to the provided digital signal, the eachdigital input signal representing spectral content concentrated in arespective single corresponding subband within the spectral range, andupdating parameters of the digital predistorter according to theacquired one or more data samples to mitigate non-linear characteristicsof the RF transmission path. The method further includes receiving afurther input signal for transmission by the RF transmission path, thefurther input signal representing spectral content in a particularsubband within the spectral range, and using the configured predistorterto process the further input signal to yield a predistorted signal forproviding to the RF transmission path.

Embodiments of the additional method may include at least some of thefeatures described in the present disclosure, including any of the abovefeatures of the first method and the first linearization system, as wellas one or more of the following features.

The spectral range, W, may include n RF bands of approximatelyequal-sized bandwidths.

Acquiring the one or more data samples may include controllablyadjusting a wireless device comprising the RF transmission path tooperate in one or more of the different subbands within the spectralrange, and at each of the one or more of the different subbands,measuring at least one set of samples.

Acquiring the one or more data samples may include measuring duringruntime, subsequent to an initial computation of the parameters of thedigital predistorter, additional sets of samples at additional subbandswithin the spectral range, and re-updating the parameters of the digitalpredistorter further based on at least some of the additional sets ofsamples.

The digital predistorter may be implemented in a user equipment (UE),and the plurality of subbands may be successively assigned bands fortransmission.

The updated parameters of the digital predistorter may be configured toweigh basis functions used to predistort the further input signal, withthe basis functions including complex terms that depend on aτ-dimensional complex vector q corresponding to complex input samples tothe digital distorter, and real terms that depend on a d-dimensionalreal vector p representative of values of operating conditionsassociated with operation of the RF transmission path, with d beingrepresentative of a number of parameters of the operating conditionsassociated with the operation of the RF transmission path.

A total number of the basis functions used to digitally predistort inputsignals may be proportional to the product of a number of terms, b, in afirst set of basis functions, and d+1, such that the total number ofbasis functions is proportional to b·(d+1).

Acquiring the one or more data samples representing the operation of theRF transmission path in the different subbands may further includecollecting for the one or more data samples corresponding operatingconditions parameters, with the corresponding operating conditionsparameters including one or more of, for example, a correspondingtemperature of the RF transmission path, a corresponding average power,a corresponding power supply voltage (V_(DD)) associated with at leastone power amplifier of the RF transmission path, a corresponding VoltageStanding Wave Ratio (VSWR) associated with the RF transmission path, ageof the collected each of the sets of samples, and/or correspondingchannel information in which the one or more data samples is collected.

Using the configured predistorter to process the further input signalmay include predistorting the further input signal according to:

${{v\lbrack t\rbrack} = {{u\lbrack t\rbrack} + {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{u}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}},{where}$${q_{u}\lbrack t\rbrack} = \begin{bmatrix}{u\lbrack t + l - 1\rbrack} \\\vdots \\{u\lbrack t + l - \tau\rbrack}\end{bmatrix}$

where v[t] is an output of the digital predistorter at time t, u[t] isan input sample to the digital predistorter at the time t, B_(k) are thebasis functions for k=1 to n, q_(u)[t] are stacks of input samples, p[t]are d-dimensional real vectors of operating conditions at the time t,and x_(k) are the computed digital predistortion parameters to weigh thebasis functions.

Updating the parameters of the digital predistorter may includederiving, according to an optimization process that is based, at leastin part, on the acquired one or more data samples measured in thedifferent subbands, the digital predistortion parameters, x_(k), toweigh the basis functions B_(k).

Deriving according to the optimization process the parameters, x_(k), ofthe digital predistorter may include adaptively adjusting the digitalpredistortion parameters, x_(k), through minimization of a regularizedmean square error function E(x) according to:

${{E(x)} = {{\frac{\rho}{n}{x}^{2}} + {\frac{1}{N}{\sum\limits_{t \in T}{{{v\lbrack t\rbrack} - {y\lbrack t\rbrack} - {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{u}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}}^{2}}}}},$

where ρ>0 is a regularization factor, v[t] is an output of the digitalpredistorter at the time t, and y[t] is the output of an observationreceiver coupled to an output of the RF transmission path.

Adaptively adjusting the digital predistortion parameters, x_(k), mayinclude deriving correlation matrices G and L, when n<<100, with n beingrepresentative of the number of basis functions, according to:

${G = {\frac{1}{N}{\sum\limits_{t \in T}{{B\lbrack t\rbrack}{B\lbrack t\rbrack}^{\prime}}}}},{L = {\frac{1}{N}{\sum\limits_{t \in T}{\left( {{v\lbrack t\rbrack} - {y\lbrack t\rbrack}} \right)^{\prime}{B\lbrack t\rbrack}}}}},{where}$${{B\lbrack t\rbrack} = \begin{bmatrix}{B_{1}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)} \\\vdots \\{B_{n}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}\end{bmatrix}};$

and deriving the digital predistortion parameters, x_(k), according to:

$\overset{\_}{x} = {\left( {{\left( \frac{p}{n} \right)I} + G} \right)^{- 1}{L.}}$

Adaptively adjusting the digital predistortion parameters, x_(k), mayinclude approximating the digital predistortion parameters, x_(k),according to a stochastic gradient process.

Acquiring the one or more data samples representing operation of the RFtransmission path to transmit radio signals in the different subbandsmay include selecting the one or more data samples from a plurality ofdata samples according to a variety criterion computed based on thevariety measure for the each data record, with the plurality of recordsbeing arranged in a variety database structure in which each recordcorresponds to one of the one or more data samples.

In some variations, an additional linearization system to performdigital predistortion of signals provided to a radio frequency (RF)transmission path configured to transmit radio signals in a plurality ofsubbands within a spectral range, is provided. The system includes theRF transmission path comprising at least one power amplifier thatproduces output with non-linear distortions, and a digital predistortercomprising an adaptation section and a compensator. The digitalpredistorter is configured to configure the compensator to predistortsignals comprising arbitrary spectral content within the spectral range,including to acquire one or more data samples representing operation ofthe RF transmission path to transmit radio signals in differentsubbands, each data sample including a digital input signal provided tothe RF transmission path for transmission and a digital sensed signalrepresenting a sensing of a radio transmission in response to theprovided digital signal, the each digital input signal representingspectral content concentrated in a respective single correspondingsubband within the spectral range. Configuring the compensator alsoincludes updating parameters of the digital predistorter according tothe acquired one or more data samples to mitigate non-linearcharacteristics of the RF transmission path. The digital predistorter isadditionally configured to receive a further input signal fortransmission by the RF transmission path, the further input signalrepresenting spectral content in a particular subband within thespectral range, and use the configured compensator to process thefurther input signal to yield a predistorted signal for providing to theRF transmission path.

Embodiments of the additional linearization system may include at leastsome of the features described in the present disclosure, including anyof the above features for the various methods and for the firstlinearization system.

The digital predistorter configured to acquire the one or more datasamples may be configured to controllably adjust a wireless devicecomprising the RF transmission path to operate in one or more of thedifferent subbands within the spectral range, and at each of the one ormore of the different subbands, measure at least one set of samples.

The digital predistorter configured to acquire the one or more datasamples may be configured to measure during runtime, subsequent to aninitial computation of the parameters of the digital predistorter,additional sets of samples at additional subbands within the spectralrange, and re-update the parameters of the digital predistorter furtherbased on at least some of the additional sets of samples.

The digital predistorter configured to use the compensator may beconfigured to derive from a first set of basis functions an expanded setof basis functions of the digital predistorter, the expanded set ofbasis functions including (d+1) groups of basis functions, with d beingrepresentative of a number of parameters of operating conditions, with afirst group of the expanded set of basis functions including the firstset of basis functions without any modification, and with each of theremaining d groups of the expanded set of basis functions beingdetermined as a transformation of the first set of basis functionsaccording to a function of at least one of the parameters of theoperating conditions. The digital predistorter may further be configuredto weigh the expanded set of basis functions with the updated digitalpredistortion parameters, to process the further input signal.

The digital predistorter configured to acquire the one or more datasamples representing operation of the RF transmission path to transmitradio signals in the different subbands may be configured to select theone or more data samples from a plurality of data samples according to avariety criterion computed based on the variety measure for the eachdata record, wherein the plurality of records are arranged in a varietydatabase structure in which each record corresponds to one of the one ormore data samples.

In some variations, a further method for digital predistortion isprovided, that includes obtaining a first set of digital predistortion(DPD) basis functions for controlling operation of a digitalpredistorter of a wireless device operating on a received at least oneinput signal directed to a power amplification system comprising atransmit chain with at least one power amplifier that produces outputwith non-linear distortions, and determining an adapted set of DPD basisfunctions derived from the first set of DPD basis functions, that dependon operating conditions associated with operation of the wirelessdevice, for controlling the operation of the digital predistorter. Themethod also includes configuring the digital predistorter with DPDcoefficients determined for the adapted set of DPD basis functionsbased, at least in part, on observed samples of the transmit chainresponsive to the at least one input signal.

Embodiments of the further method may include at least some of thefeatures described in the present disclosure, including any of the abovefeatures of the first and second methods, and the first and secondlinearization systems, as well as one or more of the following features.

The basis functions may include complex terms that depend on aτ-dimensional complex vector q corresponding to complex input samples tothe digital distorter, and real terms that depend on a d-dimensionalreal vector p representative of values of the operating conditionsassociated with the operation of the wireless device on the received atleast one input signal, with d being representative of a number ofparameters of the operating conditions associated with the operation ofthe wireless device.

A total number of basis functions used to digitally predistort the atleast one input signal may be proportional to the product of a number ofterms, b, in the first set of basis functions, and d+1, such that thetotal number of basis functions is proportional to b·(d+1).

The basis functions may include (d+1) groups of basis functions, with afirst group of basis functions including the first set of basisfunctions without any modification, and with each of the remaining dgroups of basis functions determined as the product of the first set ofbasis functions and one of the operating conditions associated with thewireless device.

Configuring the predistorter with the DPD coefficients may includecomputing the DPD coefficients according to an optimization process thatyields the DPD coefficients, x_(k), as weights to the basis functionsthat minimize an error function based on the observed samples of thetransmit chain and samples of the at least one input signal.

Computing, according to the optimization process, the DPD coefficients,x_(k), may include adaptively adjusting the DPD coefficients, x_(k),through minimization of a regularized mean square error function E(x)according to:

${{E(x)} = {{\frac{\rho}{n}{x}^{2}} + {\frac{1}{N}{\sum\limits_{t \in T}{{{v\lbrack t\rbrack} - {y\lbrack t\rbrack} - {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}}^{2}}}}},{{{where}\mspace{14mu} {q_{y}\lbrack t\rbrack}} = \begin{bmatrix}{y\left\lbrack {t + l - 1} \right\rbrack} \\\vdots \\{y\lbrack t + l - \tau\rbrack}\end{bmatrix}}$

where ρ>0 is a regularization factor, B_(k) are the basis functions fork=1 to n, q_(y) [t] are stacks of input samples at time t, p[t] ared-dimensional real vectors of the operating conditions at the time t,v[t] is an output of a digital predistortion (DPD) compensator at thetime t, and y[t] is the output of an observation receiver coupled to anoutput of the transmit chain.

Adaptively adjusting the DPD coefficients, x_(k), may include derivingcorrelation matrices G and L, when n<<100, with n being representativeof the number of basis functions, according to:

${G = {\frac{1}{N}{\sum_{t \in T}{{B\lbrack t\rbrack}{B\lbrack t\rbrack}^{\prime}}}}},{L = {\frac{1}{N}{\sum_{t \in T}{\left( {{v\lbrack t\rbrack} - {y\lbrack t\rbrack}} \right)^{\prime}{B\lbrack t\rbrack}}}}},{{{{where}\mspace{14mu} {B\lbrack t\rbrack}} = \begin{bmatrix}{B_{1}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)} \\\vdots \\{B_{n}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}\end{bmatrix}};}$

and deriving the DPD coefficients, x_(k), according to:

$\overset{\_}{x} = {\left( {{\left( \frac{p}{n} \right)I} + G} \right)^{- 1}{L.}}$

Adaptively adjusting the DPD coefficients, x_(k), may includeapproximating the DPD coefficients, x_(k), according to a stochasticgradient process.

The method may further include collecting data records representative ofsamples of the at least one input signal and respective one or moreobserved samples of the transmit chain responsive to the samples of theat least one input signal.

Collecting the data records may include collecting the data records inone or more spectral channels, the one or more spectral channels locatedwithin a wide band spectral range, with each of the one or more spectralchannels having a respective bandwidth smaller than a range bandwidth ofthe spectral range.

In some variations, a further linearization system to perform digitalpredistortion is provided that includes a transmit chain comprising atleast one power amplifier that produces output with non-lineardistortions, and a digital predistorter comprising an adaptation sectionand a compensator. The digital predistorter is configured to obtain afirst set of digital predistortion (DPD) basis functions for controllingoperation of the digital predistorter of a wireless device operating ona received at least one input signal, and determine an adapted set ofDPD basis functions, derived from the first set of DPD basis functions,that depends on operating conditions associated with operation of thewireless device, for controlling the operation of the digitalpredistorter. The digital predistorter is also configured to configurethe compensator with DPD coefficients determined for the adapted set ofDPD basis functions based, at least in part, on observed samples of thetransmit chain responsive to the at least one input signal.

Embodiments of the further linearization system may include at leastsome of the features described in the present disclosure, including anyof the above features for the various methods, and for the variouslinearization systems, as well as one or more of the following features.

The basis functions may include (d+1) groups of basis functions, with afirst group of basis functions including the first set of basisfunctions without any modification, and with each of the remaining dgroups of basis functions determined as a transformation of the firstset of basis functions according to a function of at least one of theparameters of the operating conditions.

The each of the remaining d groups of basis functions may be determinedas the product of the first set of basis functions and one of theoperating conditions associated with the wireless device.

The digital predistorter configured to configure the compensator withthe DPD coefficients may be configured to compute the DPD coefficientsaccording to an optimization process that yields the DPD coefficients,x_(k), as weights to the basis functions that minimize an error functionbased on the observed samples of the transmit chain and samples of theat least one input signal.

The digital predistorter may further be configured to collect datarecords, representative of samples of the at least one input signal andrespective one or more observed samples of the transmit chain responsiveto the samples of the at least one input signal, in one or more spectralchannels, the one or more spectral channels located within a wide bandspectral range, with each of the one or more spectral channels having arespective bandwidth smaller than a range bandwidth of the spectralrange.

In some variation, yet another method for digital predistortion isprovided that includes collecting data for a wireless device comprisinga transmit chain that includes at least one power amplifier thatproduces output with non-linear distortions. The data includes datarecords with each data record including input signal data andcorresponding output signal data for the transmit chain, and furtherbeing associated with a set of operating conditions, with the each datarecord is associated with a variety measure representative of an extentof distinguishability of the respective data record from other collecteddata records, and with collecting the data including collecting the datain one or more spectral channels, the one or more spectral channelsbeing located within a wide band spectral range, with each of the one ormore spectral channels having a respective bandwidth smaller than arange bandwidth of the spectral range. The method also includesselecting at least some of the data records according to a varietycriterion computed based on the variety measure for the each datarecord, and computing, based on the selected at least some of the datarecords, digital predistortion parameters used to control a digitalpredistorter of the wireless device, with computing the digitalpredistortion parameters including obtaining a first set of digitalpredistortion (DPD) basis functions for controlling operations of thedigital predistorter, determining an adapted set of DPD basis functions,derived from the first set of DPD basis functions, that depend onoperating conditions values corresponding to the selected at least someof the data records, and configuring the digital predistorter with thedigital predistortion parameters determined for the adapted set of DPDbasis functions based, at least in part, on the selected at least someof the data records. The method also includes applying the digitalpredistorter, configured with the computed digital predistortionparameters, to subsequent input signals.

Embodiments of the yet other method may include at least some of thefeatures described in the present disclosure, including any of the abovefeatures for the various methods, and/or for the various linearizationsystems.

In some variations, systems are provided that are configured to performone or more of the method steps provided above.

In some variations, a design structure is provided that is encoded on anon-transitory machine-readable medium, with the design structureincluding elements that, when processed in a computer-aided designsystem, generate a machine-executable representation of one or more ofthe systems, digital predistorters, transmit chains, and/or any of theirrespective modules, as described herein.

In some variations, an integrated circuit definition dataset is providedthat, when processed in an integrated circuit manufacturing system,configures the integrated circuit manufacturing system to manufactureone or more of the systems, digital predistorters, transmit chains,and/or any of their respective modules, as described herein.

In some variations, a non-transitory computer readable media is providedthat is programmed with a set of computer instructions executable on aprocessor that, when executed, cause the operations comprising thevarious method steps described above.

Other features and advantages of the invention are apparent from thefollowing description, and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other aspects will now be described in detail with referenceto the following drawings.

FIG. 1 is a block diagram of a linearization system configured toimplement various DPD adaptation approaches as described herein.

FIG. 2 is a diagram illustrating collection of samples from narrowsubbands of a wideband spectral range.

FIG. 3 includes graphs comparing the performance results of DPDcompensation systems implemented using two different approaches (namely,a wideband sample collection approach, and narrow subbands samplecollection approach).

FIG. 4 is a flowchart of an example procedure for digital predistortionfor a radio frequency (RF) transmission path configured to transmitradio signals in a plurality of subbands within a spectral range.

FIG. 5 is a flowchart of an example procedure for digital predistortionusing adaptive basis functions.

FIG. 6A includes graphs illustrating simulation results for anoptimization process performed without ensuring a good variety ofsamples.

FIG. 6B includes graphs showing simulation results when the optimizationprocess used samples that were subject to a variety-based distribution(randomization) approach to promote sample diversity.

FIG. 7 is a flowchart of an example procedure for digital predistortionimplemented using a DPD adaptation process based on a variety-basedapproach.

Like reference symbols in the various drawings indicate like elements.

DESCRIPTION

Very generally, the following includes a description of a number oftechniques that may be used individually, or preferably in combination,to provide a digital predistorter that provides high performance over awide range of operating conditions, and is able to react to rapidchanges between such operating conditions.

These techniques are particularly applicable to radio frequency (RF)user equipment (UE), such as a cellular telephone, that is controlled(e.g., by a base station (BS)) to make use of rapid variations, forexample, in spectral positions (e.g., transmission channels orsubcarriers), power levels, or output loading. However, it should beunderstood that the techniques are not limited to implementation on userequipment, and that the techniques may be used on base stations as well.Furthermore, although described in the context of predistortion forover-the-air RF applications, the techniques may be applied to otherdomains including coaxial cable communication (e.g., for use in DOCSISstandard modems), audio communication (e.g., for linearizing audio,ultrasound, ultra-low frequency), and optical communication (e.g., tomitigate non-linear characteristics of optical communication paths).

A first of these techniques is motivated in part by the varying spectralposition of a transmit spectrum. In this technique, generally, apredistorter is configured to process input signals that span arelatively narrow subband within a wider available bandwidth, and is“universal” in the sense that it is largely or completely agnostic tothe location and/or width of the particular subband in which thetransmitter is operating at any given time. It should be recognized thatone challenge for this technique is that data available to adapt thepredistorter is sparse, in the sense that feedback available to updatethe parameters of the predistorter only sense characteristics over asmall fraction of the overall available bandwidth at any one time.

A second of these techniques explicitly accounts for changes in certainaspects of the operating conditions by introducing parametersrepresenting those aspects, and incorporating dependency on thoseparameters into the model structure of the predistorter. Using thisapproach, a change in one of these aspects involves changing the valueof the corresponding parameter of the predistorter model without havingto wait for a slower adaptation procedure to react to the change in theaspect of the operating condition. As an example, the dependence ontransmission power may be parameterized, and the predistorter can reactto changes in power virtually instantaneously. In another example, thebasis functions, which are generally a function of the desired input,that are used to predistort input signals can be further adapted basedon changes to operating conditions.

In example implementations of the second technique, a method for digitalpredistortion is provided that includes obtaining a first set of digitalpredistortion (DPD) basis functions for controlling operations of adigital predistorter, of a wireless device, operating on at least oneinput signal directed to a power amplification system comprising atransmit chain with at least one power amplifier that produces outputwith non-linear distortions. The method additionally includesdetermining an adapted set of DPD basis functions, derived from thefirst set of DPD basis functions, that depend on operating conditions(e.g., including environmental parameters) associated with operation ofthe wireless device, for controlling operation of the digitalpredistorter, and configuring the digital predistorter with DPDcoefficients determined for the adapted set of DPD basis functionsbased, at least in part, on observed samples of the transmit chainresponsive to the at least one input signal.

A third of these techniques addresses the possibility that duringoperation, the range of operating conditions is not made use of in arepresentative manner, or follows a time pattern that may result inadaptation of the predistorter to degrade its ability to change to a newoperating condition that may be underrepresented in its influence on theconfiguration of the predistorter. Very generally, the technique makesuse of a sampling of operational data based on which the configurationis adapted that maintains an adequate diversity over the possibleoperating conditions, thereby providing good performance immediatelyafter a change from one configuration to another.

In example implementations of the third type of techniques, digitalpredistortion adaptation is implemented using data samples selectedaccording to variety metrics. In some such implementations, a method fordigital predistortion is provided that includes collecting data for awireless device comprising a transmit chain that includes at least onepower amplifier that produces output with non-linear distortions. Thecollected data includes data records, with each data record includinginput signal data and corresponding output signal data for the transmitchain, and further being associated with a set of operating conditionsvalues. Each data record is also associated with a variety metricrepresentative of an extent of distinguishability of the respective eachdata record from other collected data records. Examples of such avariety metrics include distance metrics between elements of differentrecords (large distances are generally indicative of highdistinguishability between such different records), with one example ofsuch distance computation being the maximal absolute value ofdifferences between the corresponding elements of the data records. Themethod additionally includes selecting at least some of the data recordsaccording to a variety criterion computed based on the variety metricfor the each data record, computing, based on the selected at least someof the data records, digital predistortion parameters used to control adigital predistorter of the wireless device, and applying the digitalpredistorter, configured with the computed digital predistortionparameters, to subsequent input signals.

The techniques outlined above are described below in the context of apredistortion system 100 shown in block diagram form in FIG. 1. In FIG.1, u is an input signal that represents a desired signal to betransmitted via a transmission section F 120. The signal u comprises asequence . . . , u[t−1], u[t], u[t+1], . . . of complex I/Q samplesprovided to the system 100 in digital form. As introduced above, thisinput signal in general occupies a relatively small part of an overallavailable bandwidth of the system. However, through implementation of anadaptation process that uses samples collected over a large number ofdiverse bands/subbands within the available bandwidth (e.g., the rangeof frequencies of a set of available communication channels) of thesystem (i.e., the implementation referred to as the First Technique, asfurther discussed in greater detail below), the adaptive DPDcompensation system 100 can be realized as a universal DPD compensatorconfigured to can operate at different spectral bands (e.g., within abroad spectral range, W, that includes bands operated by correspond todifferent commercial cellular operators, different available commercialbands, different cellular technologies, etc.). The techniques are alsoapplicable for use with similar systems described in PCT Application No.PCT/US2019/031714, filed on May 10, 2019, titled “Digital Compensationfor a Non-Linear System,” U.S. application Ser. No. 16/004,594, titled“Linearization System,” filed on Jun. 11, 2018, and U.S. applicationSer. No. 16/004,713, titled “Multi-Band Linearization System,” filed onJun. 11, 2018, which are each incorporated herein by reference.

A compensator C 110 is electrically coupled to the transmission sectionF 120 that represents the signal chain from a digital signal (atbaseband, or possibly at in intermediate frequency band) to a radiofrequency signal provided to, or emitting from, an antenna, includingcomponents such a modulators, power amplifier, analog transmission line,and the like, which can introduce non-linear characteristics into thesignal path. The transmission section F 120 (also referred to astransmission chain or transmit chain) implements a digital-to-analogsubsystem that includes, for example, a DAC/PA combination. In wirelessimplementations, the transmission section F 120 also includes amodulator (e.g., implemented using a local oscillator) to allowtransmission of a resultant analog signal within some RF band within thespectral range W that the system 100 is configured to operate in. Theparticular band may be selected and/or adjusted (e.g., during hand-offoperations) according to availability of cellular resources (e.g.,available RF communication bands).

The compensator (also referred to as the digital predistorter) C 110, isconfigured to compensate for non-linear characteristics of thetransmission section F 120 (such non-linear behavior may be caused byoperation of one or more of the components of the transmission section120, such as the power amplifier, the DCA, the modulator, etc.) Inparticular the predistorter receives the desired signal u and outputs acorresponding predistorted signal v, which is a function of u, wherethis function is parameterized by configuration parameters x. A sensingsection S 130 (also referred to as the observation path) senses theoutput of the transmission section F 120, and provides a sensed signal yin digital form. Ideally, the sensed signal y is the same (or a scaled,e.g., amplified, version) as the desired input u if the predistorter 110is able to exactly invert all the non-linear effects of the transmissionsection. The sensing section S 130 implements an analog-to-digitalsub-system, representing real time output measurement (e.g., ademodulator/ADC combination) of the output, w, of the transmissionsection F 120. The block S 130 produces observed digital samples denotedas the signal y. In some embodiments, at least a batch of the observedsamples is stored in a memory device (e.g., a buffer or a bank ofbuffers) that is in electrical communication with at least one of thesubsystems of the system 100.

An adaptation section A 140 (also referred to as an adapter) receivesthe desired signal u and the sensed signal y and determines thepredistortion parameters x that are used in order to approach the idealsituation in which y is the same as u. As will be discussed in greaterdetail below, in some example embodiments, the system 100 is configuredto derive and apply a predistortion process that uses adaptive basisfunctions that are based on the operating conditions (e.g.,environmental characteristics) of the system 100. In at least somecombinations of techniques that explicitly model aspects of theoperating conditions, the adaptation section receives operatingparameters p, for example provided by a controller of the system, orsensed by sensing devices/sections 150 (schematically depicted in FIG. 1as sensing characteristics of the transmission section 120, recognizingthat this is only one possible source of such operating conditions).Such sensing devices can include, for example, a temperature sensor,current and/or voltage sensors, RF power meter, circuit and/orprocessor-based devices that derives operating condition parameters(such as the voltage standing wave ratio, or VSWR, values indicative ofrecords' age, such as timestamps), etc.

More particularly, samples of the intermediary signal v and the observedsamples y are provided to the adaptation section 140 A, which implementsan adaptation process (e.g., an optimization process, a coefficientselection process to select pre-determined coefficients from a look-uptable, a coefficient interpolation process, etc.) to derive a vector xof the weighing coefficients of the basis functions applied by thecompensator C 110, based on the data obtained for v, and y (and, in someinstances, u). The observed samples y, as well as the intermediarysamples v and/or the input samples u, may all be stored in a buffer (notshown, which may be part of any of the sub-systems of the system 100).The content of the buffer (which may be arranged as a matrix, or may bearranged according to some other appropriate data structure) may beoccasionally updated as new samples, that are deemed to be more usefulfor the adaptation process (because they are more recent and/or meetsome data criterion such as data uniformity) become available.

In at least some implementations, the compensator (predistorter) C 110implements a non-linear transformation that may be represented as:

${v\lbrack t\rbrack} = {{u\lbrack t\rbrack} + {\overset{n}{\sum\limits_{k = 1}}{x_{k}{{B_{k}\left( {{q_{u}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}.}}}}$

In this equation, q_(u)[t] is a window of 2 past input values

${q_{u}\lbrack t\rbrack} = \begin{bmatrix}{u\lbrack t + l - 1\rbrack} \\{u\lbrack t + l - 2\rbrack} \\\vdots \\{u\lbrack t + l - \tau\rbrack}\end{bmatrix}$

and p[t] is a vector (or scalar) representing aspects of the currentoperating condition. Note that in versions that do not explicitly modelsuch aspects, the dependence on p[t] may be omitted. The parameters xshown in FIG. 1 comprise a vector of n complex-values parameters x_(k).

The terms B_(k)(q, p) are referred to as “basis functions,” which canoutput scalar complex valued function of the inputs q and p. A varietyof such functions may be used, for example, as described in PCTApplication No. PCT/US2019/031714, filed on May 10, 2019, titled“Digital Compensation for a Non-Linear System.” Note that the number ofsamples in q_(u) depends on the basis functions used according to themaximum lag τ used by any of the basis functions. Very generally, insome embodiments, the basis functions B_(k) may be selected duringoperation according to the operating conditions, and the adaptionsection A 140 modifies (i.e., adapts) the parameters x (which weigh thebasis functions) as new data samples v and y are made available to it,e.g., in an incremental updating process. One or more such processes aredescribed later in this document. Thus, the adaptive DPD compensationsystem 100 may be configured to adaptively determine DPD coefficients(e.g., selected from a lookup tables/matrices containing pre-determinedDPD coefficients associated with different operating points, ordynamically derived according to current and previously obtainedsamples).

As noted, in some example approaches, the basis functions may beadaptable functions that vary according to operating conditions, thusproviding a larger number and variety of basis functions beyond aninitial set of carefully pre-selected basis functions. Thus, in someexamples, the adaptability of the basis functions used for thepredistortion operations can be made dependent on a vector prepresenting d operating conditions that is introduced into thepredistortion model by essentially introducing a linear dependence oneach of these terms. This can be represented by a replacement of

x _(k) B _(k)(q,p)

with

x _(3(k−1)+1) B _(k0)(q)+x _(3(k−1)+2) B _(k0)(q)p ₁ + . . . +x_(3(k−2)+d+1) B _(k0)(q)p _(d).

Therefore, the number terms in the adapted parameters x goes up by afactor of d+1. In this example, the complexity of basis functionsremains unchanged because the same basis function B_(k0) is used for agroup of (d+1) terms. In other implementations, different basisfunctions may be used for each of the aspects of the operatingconditions, such that these basis functions may depend, in part, oncontemporaneous environmental parameters values measured/determinedduring the adaptation process, with the number of total basis functionsused to digitally predistort the input samples being dependent on thenumber of operating conditions used. For example, if two environmentalparameters (e.g., temperature and VDD) are measured for collectedsamples, the number of basis functions used for the digitalpredistortion process will be three (3) times the number of basisfunctions used in implementation that do not incorporate environmentalparameters (or other types of operation conditions) into the adaptationprocess.

As noted above, and as will be discussed in greater detail below, thesystem 100 may also be configured for more robust and efficientadaptability through implementation of a variety matrix adaptationapproach (the “third technique” referred to above). In such an approach,past samples of (q_(u)[t],u[t]−y[t], p[t]), or, for certain adaptationprocedures (q_(y)[t], v[t]−y[t], p[t]), are not used with a uniformdistribution over past points in time. One implementation of suchnon-uniform sampling is to maintain a buffer V of a subset of pastsamples. This buffer of samples (q^((i)), v^((i)), p^((i))) ismaintained by the system to represent a diversity of past operatingconditions, without overrepresenting any particular condition.Generally, when a new time sample (q[t],v[t], p[t]) is made available tothe adaptation section, the adaption section A 140 determines whether toretain this time sample in the buffer V, and if so, which current entryin the buffer to eject.

One general approach to determining whether to eject a current sampleand replace it with the new time sample is to do so if such areplacement can increase the diversity or uniformity of the sampling ofoperating conditions in the buffer. For example, an easy-to-computedistance between data samples is defined as the maximum absolutedifference between components of the data sample, for each data i in thebuffer. In general, it is desirable to have data points in the bufferhave as large as possible a minimum distance between data points inorder to cover a larger hyperspace, thus promoting diversity in theoverall buffer. The new time sample similarly has a minimum distanceh_(i) to the data points in the buffer. The data sample with thesmallest value of min(r_(i), h_(i)) is then ejected and replaced withthe new sample. In the adaptation procedure, the updated buffer V isused to update the predistortion parameters x.

As noted, the adaptation section A 140 is configured to compute the DPDcoefficients that weigh basis functions applied to the input signal u[t]by the compensator C 110. In at least some examples, the parameters x ofthe predistorter are updated using an iterative updating procedure, forinstance, using a stochastic gradient procedure. In other examples, theparameters x are updated in a batch procedure, for example, using aGramian matrix inversion procedure.

In the iterative procedure, an objective is to optimize (i.e., minimize)an objective

${E(x)} = {{\frac{\rho}{N}{x}^{2}} + {\frac{1}{N}{\sum\limits_{t \in T}{{{e\lbrack t\rbrack} - {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}}^{2}}}}$

where

e[t]=v[t]−y[t].

The sum is either over past time samples, or in the case of use of thebuffer V, over the time samples represented in the buffer.

In a stochastic gradient approach, uniformly randomly selected times τare selected and the current parameters values x are updated as

x←x−α∇ _(τ)(x)

where

∇_(τ)(x)=a[τ]′(a(τ)x−e[τ])

and

a(τ)=[B ₁(q _(y)[t],p[t]), . . . ,B _(N)(q _(y)[t],p[t])]

The step size α may be adjusted (e.g., reduced) over time. Furtherdetails regarding the various optimization procedures that may be usedin conjunction with the system 100 and the implementations of one ormore of the agile adaptation techniques described herein are providedbelow.

Turning back to FIG. 1, the system 100 illustrated in FIG. 1 may be atleast part of a digital front end of a device or system (such as anetwork node, e.g., a WWAN base station or a WLAN access point, or of amobile device). As such, the system 100 may be electrically coupled tocommunication modules implementing wired communications with remotedevices (e.g., via network interfaces for wired network connection suchas through ethernet), or wireless communications with such remotedevices. In some embodiments, the system 100 may be used locally withina device or system to perform processing (predistortion processing orotherwise) on various signals produced locally in order to generate aresultant processed signal (whether or not that resultant signal is thencommunicated to a remote device).

In some embodiments, at least some functionality of the linearizationsystem 100 may be implemented using a controller (e.g., aprocessor-based controller) included with one or more of the modules ofthe system 100 (the compensator C 110, the adaptation section A 140, orany of the other modules of the system 100). The controller may beoperatively coupled to the various modules or units of the system 100,and be configured to compute approximations of the gradient of the Errorfunction (as will be discusses in greater detail below), update DPDcoefficients based on those approximations, and perform digitalpredistortion using the continually updated DPD coefficients. Thecontroller may include one or more microprocessors, microcontrollers,and/or digital signal processors that provide processing functionality,as well as other computation and control functionality. The controllermay also include special purpose logic circuitry, e.g., an FPGA (fieldprogrammable gate array), an ASIC (application-specific integratedcircuit), a DSP processor, a graphics processing unit (GPU), anaccelerated processing unit (APU), an application processor, customizeddedicated circuitry, etc., to implement, at least in part, the processesand functionality for the system 100. The controller may also includememory for storing data and software instructions for executingprogrammed functionality within the device. Generally speaking, acomputer accessible storage medium may include any non-transitorystorage media accessible by a computer during use to provideinstructions and/or data to the computer. For example, a computeraccessible storage medium may include storage media such as magnetic oroptical disks and semiconductor (solid-state) memories, DRAM, SRAM, etc.

The approaches outlined can be used separately or in conjunction withany of the other DPD adaptation approaches discussed herein. Thus, forexample, an embodiment of the approaches and techniques described hereininclude a method for digital predistortion comprising collecting datafor a wireless device comprising a transmit chain that includes at leastone power amplifier that produces output with non-linear distortions,the data including data records with each data record including inputsignal data and corresponding output signal data for the transmit chainand further being associated with a set of operating conditions. Theeach data record is associated with a variety metric representative ofan extent of distinguishability of the respective data record from othercollected data records. Collecting the data includes collecting the datain one or more spectral channels, the one or more spectral channelslocated within a wide band spectral range, with each of the one or morespectral channels having a respective bandwidth smaller than a rangebandwidth of the spectral range. The method further includes selectingat least some of the data records according to a variety criterioncomputed based on the variety metric for the each data record, andcomputing, based on the selected at least some of the data records,digital predistortion parameters used to control a digital predistorterof the wireless device. Computing the digital predistortion parametersincludes obtaining a first set of digital predistortion (DPD) basisfunctions for controlling operations of the digital predistorter,determining an adapted set of DPD basis functions, derived from thefirst set of DPD basis functions, that depend on operating conditionsvalues corresponding to the selected at least some of the data records(for example, averages of corresponding operating condition values fromeach of the selected records may be computed), and configuring thedigital predistorter with the digital predistortion parametersdetermined for the adapted set of DPD basis functions based, at least inpart, on the selected at least some of the data records. The methodadditionally includes applying the digital predistorter, configured withthe computed digital predistortion parameters, to subsequent inputsignals.

Additional details regarding the various agile adaptation techniquesdescribed herein follow.

First Technique: Wideband Adaptation Based on Narrow Band Measurements

As discussed herein, agile estimation of digital predistortion (DPD)parameters may be achieved with a universal parametrized digitalpredistorter, operable over a wideband spectral range, W, that can beimplemented based on samples collected over portions of the widebandspectral range (e.g., based on samples collected in narrow subbands ofthe spectral range) at different time intervals. Such samples can becollected using an adjustable narrow band wireless communication device(configured to operate in different subbands within the spectral range).

Thus, in some embodiments, a method for digital predistortion ofsignals, provided to a radio frequency (RF) transmission path (e.g., thetransmission section F 120) configured to transmit radio signals in aplurality of subbands within a spectral range, is disclosed. The methodincludes configuring a digital predistorter (such as the compensator C110 of FIG. 1) for predistorting signals comprising arbitrary spectralcontent within the spectral range. The configuring includes acquiringone or more data samples representing operation of the RF transmissionpath to transmit radio signals in different subbands, with each datasample including a digital input signal provided to the RF transmissionpath for transmission, and a digital sensed (e.g., sensed by the sensingsection S 130) signal representing a sensing of a radio transmission inresponse to the provided digital signal. Each digital input signalrepresents spectral content concentrated in a respective singlecorresponding subband within the spectral range (e.g., beingconcentrated or confined to a defined frequency range for a singlecommunication channel or sub-carrier). Configuring the digitalpredistorter further includes updating parameters of the digitalpredistorter (e.g., through an adaptation procedure generally realizedusing the adaptation section A 140) according to the acquired one ormore data samples to mitigate non-linear characteristics of the RFtransmission path. The procedure further includes receiving a furtherinput signal for transmission by the RF transmission path, the furtherinput signal representing spectral content in a particular subbandwithin the spectral range, and using the configured predistorter toprocess the further input signal to yield a predistorted signal forproviding to the RF transmission path.

Thus, in implementations of the first technique, a universalparametrized predistorter is realized that is robust to changingspectral conditions. That is, in the approach of the first technique, asingle predistorter implementation may be realized that can operate atdifferent sub-carriers, and does not necessarily have to adapt to newspectral conditions as a channel's spectral characteristics (carrierfrequency, bandwidth, communication protocols uses, average outputpower, etc.) change (for example, as a result of moving to a differentcell, changing to a different band within the same cellular area due tochanges caused by base station assignments, etc.) Because spectralcharacteristics can change frequently, using a robust universal digitalpredistorter configured to operate over the entire spectral range, W,can reduce computation complexity that would result from having to adaptto every change in spectral operating conditions.

To realize a universal parametrized digital predistorter, samples fromsubbands of the spectral range (i.e., bands within the spectral range,W, that have bandwidths narrower than the bandwidth W associated withthe spectral range) are collected. The collection of samples can beperformed at design time through a methodical traversal of the spectralrange, or may be collected during normal operation of the wirelessdevice (comprising the digital predistorter) as the wireless device hopsfrom one subband to another, depending on the specific use of thewireless device, availability of spectral resources (e.g., whether someavailable bands are assigned to other wireless devices), and existingenvironmental conditions. When the wireless device (comprising a digitalpredistortion system such as the system 100 of FIG. 1) dynamicallycollects samples during normal operation, and occasionally (at regularor irregular intervals) updates DPD parameters, collected samples may bestored in a variety matrix such as the one described herein (i.e., tocollect samples that promote sample diversity) along with operatingconditions (that may include spectral operating conditions).Occasionally, the digital predistortion system uses the currently storedrecords to update the DPD coefficients. The updated coefficients would,in such examples, reflect a good variety of samples, including possiblea variety of samples collected from diverse subbands. Alternatively, thewireless device may collect samples according to some other scheme thatobtains representative samples obtained for multiple subbands.

With reference to FIG. 2, a diagram 200 illustrating collection ofsamples from narrow subbands (210, 212, and 214) of a wideband spectralrange having a bandwidth of 100 MHz is provided. In this diagram, thewireless device hops (or systematically slides) into different subbands,and collects samples from the narrowband subbands. In addition to inputsamples (and/or observed samples), the operating conditions, which mayinclude spectral information, can be collected and selectively stored(e.g., based on computed variety metrics, according to which a decisionis made on whether particular samples should be stored or discarded).Occasionally, at regular or irregular intervals, the adaptation processuses the narrowband samples to generate or update the predistortionparameters, e.g., DPD coefficients that weigh the basis functions (whichmay be adaptive basis functions, as described herein). Sample datacollection can be performed, in some embodiments, by sampling input(and/or observed output of the transmission chain) at full widebandbandwidth (i.e., at the Nyquist frequency for the spectral range W) orat the narrower bandwidth of the subband (optionally upsampling thecollected samples during, for example, the DPD parameter updatingprocedure).

FIG. 3 includes graphs 310 and 320 comparing the performance results ofDPD compensation systems that were implemented using two differentapproaches. In the first implementation, corresponding to the graph 310,the DPD coefficients were generated using wideband signal samples (i.e.,the DPD system was trained using samples of a wideband signal). In thesecond implementation, corresponding to the graph 320, DPD coefficientswere generated using samples collected from multiple narrow-bandsubbands. In the implementations corresponding to the graphs 310 and320, derivation of the DPD coefficients was performed by accumulatingand averaging new and old correlation matrices. As the two graphs 310and 320 show, the DPD system trained using samples from multiplenarrow-band subbands achieved a generally higher and more robustperformance (based on the Adjacent Channel Leakage Ratio, or ACLR,behavior for the two implementations).

With reference next to FIG. 4, a flowchart of an example procedure 400for digital predistortion of signals provided to a radio frequency (RF)transmission path, configured to transmit radio signals in a pluralityof subbands within a spectral range, is shown. The procedure 400includes configuring 410 a digital predistorter (such as the onerealized by the system 100 of FIG. 1) for predistorting signalscomprising arbitrary spectral content within the spectral range. Theconfiguring operations 410 of the procedure 400 include acquiring 412one or more data samples representing operation of the RF transmissionpath to transmit radio signals in different subbands. Each data sampleincludes a digital input signal (e.g., u[t] and/or v[t] shown in FIG. 1,and also illustrated in FIG. 4) provided to the RF transmission path fortransmission and a digital sensed signal (e.g., y[t] shown in FIGS. 1and 4) representing a sensing of a radio transmission in response to theprovided digital signal. Each digital input signal represents spectralcontent concentrated in a respective single corresponding subband withinthe spectral range. The spectral information corresponding to thesubband is shown in FIG. 4 as information that can optionally beprovided for the purposes of the adaptation process. That spectralinformation can also be provided as part of the p[t] data depicted inFIG. 1. Thus, in some embodiments, acquiring the one or more datasamples representing the operation of the RF transmission path in thedifferent subbands may further include collecting for the one or moredata samples corresponding operating conditions parameters, with thecorresponding operating conditions parameters including one or more of,for example, a corresponding temperature of the RF transmission path, acorresponding average power, a corresponding power supply voltage(V_(DD)) associated with at least one power amplifier of the RFtransmission path, a corresponding Voltage Standing Wave Ratio (VSWR)associated with the RF transmission path, age of the collected each ofthe sets of samples, and/or corresponding channel information in whichthe one or more data samples is collected. In some examples, thespectral range, W, includes n RF bands of approximately equal-sizedbandwidths.

In some embodiments, acquiring the one or more data samples may includecontrollably adjusting a wireless device comprising the RF transmissionpath to operate in one or more of the different subbands within thespectral range (e.g., by controlling he modulation/demodulationfunctionality through adjustment of a local oscillator, adjustingbandpass filtering operations, etc.), and, at each of the one or more ofthe different subbands, measuring at least one set of samples. Acquiringthe one or more data samples may include measuring during runtime,subsequent to an initial computation of the parameters of the digitalpredistorter, additional sets of samples at additional subbands withinthe spectral range, and updating the parameters of the digitalpredistorter further based on at least some of the additional sets ofsamples. In some embodiments, acquiring the one or more data samplesrepresenting operation of the RF transmission path to transmit radiosignals in different subbands may include selecting the one or more datasamples from a plurality of stored data samples according to a varietycriterion computed based on the variety metric for the each data record,with the plurality of records being arranged in a variety databasestructure in which each record corresponds to one of the one or moredata samples.

The configuring operation 410 also include updating 414 parameters ofthe digital predistorter (e.g., DPD coefficients that weigh basisfunctions) according to the acquired one or more data samples tomitigate non-linear characteristics of the RF transmission path. Forexample, in some embodiments, the basis functions are adaptive basisfunctions (basis functions that can be expanded from a base set,according to, for example, operating conditions) that include complexterms that depend on a τ-dimensional complex vector q corresponding tocomplex input samples to the digital distorter, and real terms thatdepend on a d-dimensional real vector p representative of values ofoperating conditions associated with operation of the RF transmissionpath. The value d is representative of a number of parameters of theoperating conditions associated with the operation of the RFtransmission path. In such embodiments, a total number of the basisfunctions used to digitally predistort input signals is proportional tothe product of a number of terms, b, in a first set (i.e., a base set)of basis functions, and d+1, such that the total number of basisfunctions is proportional to b·(d+1)

With continued reference to FIG. 4, the procedure 400 further includesreceiving 420 a further input signal (shown as the signalu_(subsequent)[t] in FIG. 4) for transmission by the RF transmissionpath, with the further input signal representing spectral content in aparticular subband within the spectral range. The procedure 400additionally includes using 430 the configured predistorter (configuredaccording to the operations 410) to process the further input signal toyield a predistorted signal (shown in FIG. 4 as v_(subsequent)[t]) forproviding to the RF transmission path.

In some examples, using the configured predistorter to process thefurther input signal may include predistorting the further input signalaccording to:

${{v\lbrack t\rbrack} = {{u\lbrack t\rbrack} + {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{u}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}},{{{where}\mspace{14mu} {q_{u}\lbrack t\rbrack}} = \begin{bmatrix}{u\left\lbrack t + l - 1 \right.} \\\vdots \\{u\left\lbrack t + l - \tau \right.}\end{bmatrix}}$

where v[t] is an output of the digital predistorter at time t, u[t] isan input sample to the digital predistorter at the time t, B_(k) are thebasis functions for k=1 to n, q_(u)[t] are stacks of input samples, p[t]are d-dimensional real vectors of operating conditions (e.g.,environmental characteristics) at the time t, and x_(k) are the computeddigital predistortion parameters to weigh the basis functions.

Updating the parameters of the digital predisorter may include deriving,according to an optimization process that is based, at least in part, onthe acquired one or more data samples measured in the differentsubbands, the digital predistortion parameters, x_(k), to weigh thebasis functions B_(k). In some examples, deriving according to theoptimization process the parameters, x_(k), of the digital predistortermay include adaptively adjusting the digital predistortion parameters,x_(k), through minimization of a regularized mean square error functionE(x) according to:

${{E(x)} = {{\frac{\rho}{n}{x}^{2}} + {\frac{1}{N}{\sum\limits_{t \in \tau}{{{v\lbrack t\rbrack} - {y\lbrack t\rbrack} - {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{u}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}}^{2}}}}},$

where ρ>0 is a regularization factor, v[t] is an output of the digitalpredistorter at the time t, and y[t] is the output of an observationreceiver coupled to an output of the RF transmission path.

Adaptively adjusting the digital predistortion parameters, x_(k), mayinclude, for example, deriving correlation matrices G and L, whenn<<100, with n being representative of the number of basis functions,according to:

${G = {\frac{1}{N}{\sum\limits_{t \in T}{{B\lbrack t\rbrack}{B\lbrack t\rbrack}^{\prime}}}}},{L = {\frac{1}{N}{\sum\limits_{t \in T}{\left( {{v\lbrack t\rbrack} - {y\lbrack t\rbrack}} \right)^{\prime}{B\lbrack t\rbrack}}}}},{{{where}\mspace{14mu} {B\lbrack t\rbrack}} = \begin{bmatrix}{B_{1}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)} \\\vdots \\{B_{n}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}\end{bmatrix}},$

and deriving the digital predistortion parameters, x_(k), according to

$\overset{¯}{x} = {\left( {{\left( \frac{p}{n} \right)I} + G} \right)^{- 1}{L.}}$

In the above expression, x is a column vector of the complex conjugatedx_(k).

Adaptively adjusting the digital predistortion parameters, x_(k), mayinclude, in some embodiments, approximating the digital predistortionparameters, x_(k), according to a stochastic gradient process.

Second Technique: Parameterized Digital Predistortion Basis Functions

As noted, the coefficients derived by the adaptation section A 140 areused to weigh the basis functions used by compensator (predistorter) C110 to predistort the input u. Predistorting the signal u, by thecompensator C 110 requires, in some embodiments, minimizing thedifference between y (the output of the sensing section S 130) and u(the input samples) as small as possible. To add agility and versatilityto the predistortion operations, some example embodiments describedherein utilize a set of adaptable basis functions to build an expandedset of functions based on contemporaneous operating conditions. In otherwords, as the operating conditions (e.g., environmental characteristics)change, the particular set of basis functions operating on the inputsamples is adjusted in accordance with the existing operatingconditions.

An example approach that uses an adapted set of basis functions thatdepends on operating conditions (to achieve agile estimation of DPDparameters, improve responsiveness speed to changing conditions, andincrease robustness of the DPD system) is based on deriving an adaptedset of basis functions from an initial/first set of DPD basis functions.The first set of DPD functions may be a pre-determined, carefullyselected set of functions B_(k)(•) that is dependent on the inputsamples to the DPD system (and is configured to provide good DPDperformance, e.g., for a particular transmit chain or wireless device),but is independent of operating conditions. Thus, the initial (base) setof basis functions (from which descendent/derivative sets of basisfunctions can be spawned) comprises terms that are applied to inputsamples to the DPD system (i.e., u[t−k], . . . , u[t−1], u[t], u[t+1], .. . ). Spin-off (child or derivative) basis functions can then beconstructed using the initial set of functions, with added terms thatare functions of the operating conditions (e.g., parametersrepresentative of environmental characteristics). As a result, the sizeof adaptive sets of basis functions increases as more terms dependent onoperating conditions are added to the initial (base) set of basisfunctions.

A common representation of the compensator C 110 (of FIG. 1) is givenby:

${v\lbrack t\rbrack} = {{u\lbrack t\rbrack} + {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{u}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}$where ${q_{u}\lbrack t\rbrack} = \begin{bmatrix}{u\left\lbrack {t + l - 1} \right\rbrack} \\{u\left\lbrack {t + l - 2} \right\rbrack} \\\vdots \\{u\left\lbrack {t + l - \tau} \right\rbrack}\end{bmatrix}$

is the stack of recent (around t) baseband input samples. As notedabove, the vector p[t] is d-dimensional real vector of operatingconditions at time t, x_(k) (k=1, . . . , n) are the elements of acomplex n-dimensional vector x∈C^(n) (the coefficients of thecompensator), and B_(k)(q,p) are carefully selected “basis functions” ofτ-dimensional complex vector q and d-dimensional real vector p (a“careful” selection means that the operation of computing a singlesample v[t] of the corrected signal takes significantly less than nscalar multiplications; examples of carefully selected basis functionsare provided in PCT Application No. PCT/US2019/031714, filed on May 10,2019, titled “Digital Compensation for a Non-Linear System”). Twoexample operating conditions (i.e., in a situations where d=2) that maybe used to form the expanded set of basis functions may include thedrain voltage (V_(DD)) associated with the at least one power amplifierof the wireless device, and the temperature, in which case the vectorp[t] may be represented as follows:

${p\lbrack t\rbrack} = {\begin{bmatrix}{p_{1}\lbrack t\rbrack} \\{p_{2}\lbrack t\rbrack}\end{bmatrix} = \begin{bmatrix}{V_{DD}\lbrack t\rbrack} \\{{Temp}\lbrack t\rbrack}\end{bmatrix}}$

In some examples, the formation of the adapted, spinoff, set of basisfunctions (comprising b·(d+1) basis functions, where b is the totalnumber of terms in the initial/base set of basis functions, and d is thenumber of operating conditions that are used to generate the expanded,spinoff, set of basis functions) is achieved by forming one group ofbasis functions (comprising b terms) as the unmodified initial (“base”)set of basis functions, and forming d additional groups of basisfunctions (each with b basis function terms) as the product of therespective measured operating conditions and the initial/base set ofbasis functions. Thus, an expanded set of adaptive basis functions,B_(k)(q_(u)[t], p[t]), for a situation involving use of two (2)operating conditions (e.g., p₁ and p₂, corresponding to V_(DD) andtemperature) can be represented as:

B _(3(k−1)+1)(q)=B _(k0)(q)

B _(3(k−1)+2)(q)=B _(k0)(q)·p ₁

B _(3(k−1)+3)(q)=B _(k0)(q)·p ₂

Other ways to generate an expanded set of basis functions, e.g., usingother formulations and transformations to express as functions (linearor non-linear) of the operating conditions (p₁, p₂, . . . , p_(n)), withsuch formulations and transformations being applied to the initial/baseset of basis functions, may be used instead of or in addition to theabove formulation involving the product of the operating conditions ofp₁ and p₂ with the base set of basis functions. Furthermore, some groupsof expanded basis function may be formed as a function of multipleoperating conditions (e.g., each group of the expanded set may beexpanded as a function/transformation involving combinations of p₁, p₂,. . . p_(n)). It is to be noted that expansion of basis functions worksbest when there is some linear dependency between the operatingconditions (e.g., p₁ and p₂, in the above example).

In operation, a compensator, such as the compensator C 110, operatingaccording to an inverse model of the nonlinear distortion of thetransmit chain (e.g., realized by the block F 120 of FIG. 1), and usingadaptive basis functions (expanded and adapted according tocontemporaneous operating condition values) that are weighed byregularly updated DPD coefficients, receives the input signal, u, andgenerates the intermediate input signal, v as follows:

$v = {{2u} + {\sum\limits_{i = 1}^{n}{x_{i}{f_{i}(u)}}}}$

where f_(i)(•) is the i^(th) basis function of the basis functions, andx_(i) is the i^(th) parameter (e.g., the i^(th) weight) corresponding tothe i^(th) basis function. Each of the basis functions (at least in thebase set) is a linear function (e.g., u(t−1)) or a non-linear function(e.g., |u(t)|²) of the input, u, which may include memory (e.g.,u(t)*u(t−1)).

In some implementations, the adaptation process implemented by thesystem 100 of FIG. 1 adjusts the coefficients set of coefficients, x_(k)(where k represents a time instance or interval during which that setx_(k) is being used) of the predistorter by observing the measurementsamples y[t] and trying to minimize the regularized mean square erroraccording to:

${{E(x)} = {{\frac{\rho}{N}{x}^{2}} + {\frac{1}{N}{\sum\limits_{t \in T}{{{e\lbrack t\rbrack} - {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}}^{2}}}}},{where}$${{q_{y}\lbrack t\rbrack} = \begin{bmatrix}{y\lbrack t + l - 1\rbrack} \\{y\lbrack t + l - 2\rbrack} \\\vdots \\{y\lbrack t + l - \tau\rbrack}\end{bmatrix}},$

In the above expression, e[t]=v[t]−y[t] is the input/output mismatch inthe observed data, ρ>0 is the regularization factor (used to preventpoor conditioning of the optimization problem, which tends to result inunstable interaction between the adaptation process and the compensatorapplication, as well as unreasonably large entries of the optimalx_(*)=argmin E(x)), T={t} is a set of time samples, and N is the numberof elements in T.

When n is small (e.g., n<<100), minimization of E(x) can be carried outby computing the following correlation matrices:

${G = {\frac{1}{N}{\sum\limits_{t \in T}{{B\lbrack t\rbrack}{B\lbrack t\rbrack}^{\prime}}}}},{L = {\frac{1}{N}{\sum\limits_{t \in T}{\left( {{v\lbrack t\rbrack} - {y\lbrack t\rbrack}} \right)^{\prime}{B\lbrack t\rbrack}}}}},$

where B[t] is a vector of the basis functions (i.e., a vector of complexentries, with one entry per basis function of n basis functions:

${B\lbrack t\rbrack} = \begin{bmatrix}{B_{1}\left( q_{y}\lbrack t\rbrack,p\lbrack t\rbrack \right)} \\\vdots \\{B_{n}\left( q_{y}\lbrack t\rbrack,p\lbrack t\rbrack \right)}\end{bmatrix}$

In some example, the DPD coefficients to weigh the basis functions canthen be computed according to the following expression, which includes aterm dependent on p to regularize the optimization.:

$\overset{\sim}{x} = {\left( {{\left( \frac{p}{n} \right)I} + G} \right)^{- 1}L}$

Alternatively, in some embodiments (e.g., when n is large), the DPDcoefficients to weigh the adaptive basis functions can be computedaccording to a stochastic gradient process. An example stochasticgradient process that can be used is as follows.

The function E(x) to be minimized can be expressed in the form:

${{E(x)} = {{{\rho {x}^{2}} + {\frac{1}{N}{\sum\limits_{t \in T}{{{e\lbrack t\rbrack} - {{a\lbrack t\rbrack}{x\lbrack t\rbrack}}}}^{2}}}} = {R + {2{{Re}\left\lbrack {L^{\prime}x} \right\rbrack}} + {x^{\prime}{Gx}} + {\rho {x}^{2}}}}},$

where a[t]=[B₁(q_(y)[t],p[t]), B₂(q_(y)[t],p[t]), . . . ,B_(n)(q_(y)[t],p[t])] are the complex 1-by-n matrices formed by thebasis function samples, and

${G = {\frac{1}{N}{\sum{{a\lbrack t\rbrack}{{\,^{\prime}a}\lbrack t\rbrack}}}}},{L = {\frac{1}{N}{\sum{{a\lbrack t\rbrack}^{\prime}{e\lbrack t\rbrack}}}}},{R = {\frac{1}{N}{\sum{{e\lbrack t\rbrack}}^{2}}}}$

are the components of the Gramian matrix computed from the data.

As time progresses, the data represented by the samples(q_(y)[t],p[t],e[t]), t∈T, gets refreshed with the outcomes of newmeasurements. In some situations, this can be done by eitherre-computing the Gramian, by averaging new and old Gramians, or byreplacing the old (q_(y)[t],p[t],e[t]) samples with the new ones.

In some example implementations, the adaptation process used for a DPDimplementation attempts to find the vector x of compensator coefficientsas an approximation of the optimal x_(*)=argmin E(x). An approach tofinding x_(*)=argmin E(x) is by computing it as the (unique) solutionx_(*)=(ρI_(n)+G)⁻¹L of the linear equation (ρI_(n)+G)x=L, where I_(n)denotes the n-by-n identity matrix. This approach requires computation(and storage) of the n-by-n Hermitian matrix G, which makes itimpractical even for very simple compensators (for example, acompensator with n=100 complex coefficients will require computing andstoring n²=10000 real coefficients of G). In addition, solving largesystems of linear equations on FPGA or ASIC is a challenge on its own,and does not resolve the challenge of large storage required forGramians.

Alternatively, the gradient of E=E(x) at a point x∈C^(n) is given by:

${{\nabla{E(x)}} = {{2\left( {{\rho x} + {Gx} - L} \right)} = {2\left\lbrack {{\rho x} + {\frac{1}{N}{\sum\limits_{t \in T}{{a\lbrack t\rbrack}^{\prime}\left( {{{a\lbrack t\rbrack}x} - {e\lbrack t\rbrack}} \right)}}}} \right\rbrack}}},$

and can be computed and stored as an n-by-1 complex matrix, whichreduces the storage requirements, compared to those of the Gramian.

Once computed, the gradient can be used to adjust the current guess{tilde over (x)} at the optimal x, according to {tilde over (x)}⁺={tildeover (x)}−γ∇E({tilde over (x)}), making it slightly better (as long asthe step size parameter γ is sufficiently small). With the updated guess{tilde over (x)}={tilde over (x)}⁺, the gradient can be re-computed, andanother adjustment can be made. Repeating the process sufficiently manytimes leads to an arbitrarily accurate approximation {tilde over (x)} ofx_(*). Thus, in approaches based on a gradient of the error functionE(x), a new/subsequent set of coefficients to weigh the basis functionsapplied by the compensator (e.g., the compensator C 110) can beestimated/approximated as a change of the current coefficients by apre-determined multiple (i.e., a step-size γ) of the value of thegradient of E(x).

Re-computing the gradient requires a significant number of operationseach time. Since the number of steps of gradient search, before itreaches a satisfactory level of optimality, tends to be significant,compensator adaptation based on gradient search may be slow.Accordingly, in some embodiments, to reduce the amount of computationrequired to derive a current value of the gradient of E(x) (based onwhich updated coefficients are to be computed), a sub-gradient approachto minimize E(x) may be used to approximate the DPD coefficients x.Particularly, a stochastic gradient approach to minimize the functionE=E(x) is implemented based on the fact that the gradient ∇E(x) is theexpected value of the vector random variable

ξ=2[ρx+a[τ]′(a[τ]x−e[τ]],

where τ is the random variable uniformly distributed on the finite setT={t}, and that random samples of ζ (which are much cheaper, from acomputational effort, to compute than the true gradient ∇E(x)) canreplace ∇E(x) in the gradient search iterations without a significantloss of convergence rate. In the above expression, a[τ] represents amatrix of values resulting from application of the basis functions, asweighed by the DPD coefficients x, to the input sample(s) at a randomlyselected instant corresponding to the random variable τ, and e[τ] is theinput/output mismatch in the observed data between an output of anobserver receiver and the output of the digital compensator (e.g., theoutput y of the sensing section S 130, and the output v of thecompensator C 110).

Thus, a stochastic gradient approach that may be used includesconstructing a sequence of random values {tilde over (x)}₀, {tilde over(x)}₁ . . . (taking values in C^(n)), and updating the currentcoefficients at an instance k (namely, {tilde over (x)}_(k)) as follows:

{tilde over (x)} _(k+1) ={tilde over (x)} _(k)+αa[τ_(k)]′(e[τ_(k)]−a[τ_(k)]{tilde over (x)} _(k))−αρ{tilde over (x)}_(k) ,{tilde over (x)} ₀=0,

where τ₁, τ₂, . . . , τ_(n) are independent random variables uniformlydistributed on T={t}, ρ>0 is the regularization constant from thedefinition of E=E(x), and α>0 is a multiple (which may be a constantvalue that can be adjusted at regular or irregular periods) such thatα(ρ+|a[t]|²)<2 for every t∈T. The value α represents the step size thatis applied to a value based on the expected value of the vector randomvariable used to approximate the gradient ∇E(x).

The expected value x _(k)=E[{tilde over (x)}_(k)] can be shown toconverge to x_(*)=argmin E(x) as k→∞. An averaging operation may be usedaccording to the expression:

{tilde over (y)} _(k+1) ={tilde over (y)} _(k)+ϵ({tilde over (x)} _(k)−{tilde over (y)} _(k)),with ϵ∈(0,1].

The difference between {tilde over (y)}_(k) and x_(*) is small for largek, as long as ϵ>0 is small enough. This approach to minimizing E(x) isreferred to as a “projection” method, since the map

x→x+|a[t]|⁻² a[t]′(e[t]−a[t]x[t])

projects x onto the hyperplane a[t]x=e[t].

In practical implementations of the processes to compute approximationof the gradient of E(x), and to thus update the current coefficients,τ_(k) are generated as a pseudo-random sequence of samples, and thecalculations of {tilde over (y)}_(k) can be eliminated (which formallycorresponds to ϵ=1, i.e., {tilde over (y)}_(k)={tilde over (x)}_(k−1)).As a rule, this requires using a value of α with smaller minimal upperbound for α(ρ+|a[t]|²) (for example, α(ρ+|a[t]|²)<1, orα(ρ+|a[t]|²)<0.5). In some embodiments, the values of α is sometimeadjusted, depending on the progress made by the stochastic gradientoptimization process, where the progress is measured by comparing theaverage values of |e[τ_(k)]| and |e[τ_(k)]−a[τ_(k)]{tilde over(x)}_(k)|. In some embodiments, a regular update of the set of theoptimization problem parameters a[t], e[t] may be performed to replacethe data samples a[t], e[t] observed in the past with new observations.

Because, in the stochastic gradient approach described herein, the DPDcoefficients are dynamically updated (reflecting the fact that thebehavior of the system 100 changes over time), the expected values forthe vector random value ξ represents a good approximation or estimatefor the gradient ∇E(x), thus allowing for cheaper computation (from acomputational effort perspective) of the values used to update the DPDcoefficient x used by the compensator of the system 100.

In some embodiments, the value of the step size (that multiplies theapproximation determined for the gradient ∇E(x)) may be adjusted basedon a measure of progress of the stochastic gradient process, with themeasure of progress being determined by, for example, comparing anaverage values of |e[τ_(k)]| and |e[τ_(k)]−a[τ_(k)]{tilde over(x)}_(k)|. In some examples, the process starts off with a relativelylarger step size and then gradually reduces the step size.

With reference next to FIG. 5, a flowchart of an example procedure 500for digital predistortion, based on the use of adaptive basis functions(e.g., formed using operating conditions of a digital predistortionsystem performing the procedure 500) is shown. The procedure 500includes obtaining 510 a first set of digital predistortion (DPD) basisfunctions (shown as the base basis function B_(k)(q), which is expressedas a function of the samples of the input signal u, namely,q_(u)[t]=(u[t+l−1], u[t+l−2], . . . , u[t+l−τ])) for controllingoperations of a digital predistorter, of a wireless device, operating ona received at least one input signal. The at least one input signal isdirected to a power amplification system (such as the system 100 ofFIG. 1) comprising a transmit chain (such as the transmission section F120 of FIG. 1) with at least one power amplifier that produces outputwith non-linear distortions.

With continued reference to FIG. 5, the procedure 500 additionallyincludes determining 520 an adapted set of DPD basis functions, derivedfrom the first set of DPD basis functions, that depends on operatingconditions (shown as being provided through the data p[t] received atthe block 520) associated with operation of the wireless device, forcontrolling operation of the digital predistorter. In some examples, theoperating conditions may include one or more of, for example, channelinformation associated with a corresponding channel used by the wirelessdevice to process the at least one input signal, a correspondingtemperature, a corresponding average power, a corresponding drainvoltage (V_(DD)) associated with the at least one power amplifier of thewireless device, a corresponding Voltage Standing Wave Ratio (VSWR)associated with the wireless device, and/or age of collected samplesused for determining the DPD coefficients.

As discussed herein, the adaptive set of basis function if formedthrough transforming an original set of carefully selected basisfunctions that includes complex terms that depend on a τ-dimensionalcomplex vector q (corresponding to complex input samples to the digitaldistorter) to an expanded set of functions through transformations thatare implemented, for example, by real terms that depend on ad-dimensional real vector p representative of values of the operatingconditions (including environmental characteristics) associated with theoperation of the wireless device on the received at least one inputsignal. The value d is representative of a number of parameters of theoperating conditions, associated with the operation of the wirelessdevice, that are being used to expand the base set of the basisfunctions. In such embodiments, a total number of basis functions (inthe expanded set) used to digitally predistort the at least one inputsignal is proportional to the product of a number of terms, b, in thefirst set of basis functions, and d+1, such that the total number ofbasis functions is proportional to b·(d+1). The basis functions thuscomprise (d+1) groups of basis functions, with a first group of basisfunctions including, in some examples, the first set of basis functionswithout any modification, and with each of the remaining d groups ofbasis functions determined as the product of the first set of basisfunctions and one of the operating conditions (e.g., environmentalcharacteristics) associated with the wireless device. In some otherexamples, other types of transformations, expressed as linear ornon-linear functions of the operating conditions, may be used to expandthe base set of basis functions.

With continued reference to FIG. 5, the procedure 500 also includesconfiguring the digital predistorter with DPD coefficients (illustratedas the output x_(k) of the block 530) determined for the adapted set ofDPD basis functions based, at least in part, on observed samples (e.g.,y[t] in FIG. 1, and as illustrated as an input to the block 530, and/orthe input signal u[t] or the output v[t] of the compensator C 110 ofFIG. 1) of the transmit chain responsive to the at least one inputsignal.

In some embodiments, configuring the predistorter with the DPDcoefficients may include computing the DPD coefficients according to anoptimization process that yields the DPD coefficients, x_(k), as weightsto the basis functions that minimizes an error function based on theobserved samples of the transmit chain and samples of the at least oneinput signal. In such embodiments, computing, according to theoptimization process, the DPD coefficients, x_(k), may includeadaptively adjusting the DPD coefficients, x_(k), through minimizationof a regularized mean square error function E(x) according to:

${{E(x)} = {{\frac{\rho}{n}{x}^{2}} + {\frac{1}{N}{\sum\limits_{t \in T}{{{v\lbrack t\rbrack} - {y\lbrack t\rbrack} - {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{y}\lbrack t\rbrack},\ {p\lbrack t\rbrack}} \right)}}}}}^{2}}}}},{where}$${q_{y}\lbrack t\rbrack} = \begin{bmatrix}{y\lbrack t + l - 1\rbrack} \\\vdots \\{y\lbrack t + l - \tau\rbrack}\end{bmatrix}$

where ρ>0 is a regularization factor, B_(k) are the basis functions fork=1 to n, q_(y) [t] are stacks of input samples at time t, p[t] ared-dimensional real vectors of the operating conditions (which mayinclude environmental characteristics) at the time t, v[t] is an outputof a digital predistortion (DPD) compensator at the time t, and y[t] isthe output of an observation receiver coupled to an output of thetransmit chain.

As described herein, adaptively adjusting the DPD coefficients, x_(k),may include deriving correlation matrices G and L, when n<<100, with nbeing representative of the number of basis functions, according to:

${G = {\frac{1}{N}{\sum_{t \in T}{{B\lbrack t\rbrack}{B\lbrack t\rbrack}^{\prime}}}}},{L = {\frac{1}{N}{\sum_{t \in T}{\left( {{v\lbrack t\rbrack} - {y\lbrack t\rbrack}} \right)^{\prime}{B\lbrack t\rbrack}}}}},{where}$${{B\lbrack t\rbrack} = \begin{bmatrix}{B_{1}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)} \\\vdots \\{B_{1}\left( q_{y}\lbrack t\rbrack,p\lbrack t\rbrack \right)}\end{bmatrix}},$

and deriving the DPD coefficients, x_(k), according to

$\overset{\_}{x} = {\left( {{\left( \frac{p}{n} \right)I} + G} \right)^{- 1}{L.}}$

Alternatively, adaptively adjusting the DPD coefficients, x_(k), mayinclude approximating the DPD coefficients, x_(k), according to astochastic gradient process.

Third Technique: Variety-Based Adaptation Approach

As discussed herein, another technique/approach to achieve agileestimation of predistortion parameters, based on sparse dataacquisition/availability, and/or to counter rapidly changing operatingconditions, is through the implementation of a variety matrix that isused to maintain a limited number of sample points based on whichadaptation processes are performed. To facilitate robust digitalpredistortion performance, the variety matrix techniques describedherein use optimization data that includes input/output samplescollected from a diverse set of operating conditions. The diversity(i.e., variety) of the data used to perform the optimization process(e.g., using one or more of the optimization processes described herein)is achieved using a diversity matrix that allows the collection of datasamples that provide a greater diversity of the data set, and preserveshistorical data samples that have high relevance and usability forupdating the DPD coefficient (samples' relevance can decrease over time,as the previously collected samples age).

Briefly, under the variety matrix approach, a DPD system, such as thesystem 100 depicted in FIG. 1, collects data (e.g., maintained in amemory storage device coupled to the adaptation section A 140, or to anyother of the subsystems of FIG. 1) that includes data records, with eachdata record including input signal data and corresponding output signaldata for the transmit chain (e.g., implemented via the transmissionsection F 120). The records may be maintained in a matrix-like datastructure, and each may be associated with a set of operating conditionsvalues (e.g., temperature, the power supply voltage associated with thepower amplifier of the transmission section, load conditions, bandattributes associated with the spectral band through which the data wascollected or is to be transmitted to, a VSWR value, sampling rate,modulation mode, age of the samples, etc.), which may also be storedwithin the matrix. Each data record may be associated with a varietymeasure/score that is representative of an extent of distinguishabilityof the respective data record from other collected data records. Such ameasure may be stored as a field or entry of the data records (e.g.,within the matrix storing others portions of the collected data), or maybe stored as a separate data structure, with the positions of differentmeasures within the data structure corresponding to the particularrecords with which the different measures are respectively associated.

To manage the computational complexity involved with the optimizationprocess used to compute adaptive DPD coefficients (that weigh the basisfunctions, such as the adaptive basis functions described herein), asubset of collected samples may need to be selected. This selection maybe required in situations where the method of optimization is one basedon use of correlation matrices (which, as was noted above, iscomputationally manageable when the number of data samples used in theoptimization process is relatively small, e.g., n<<1000). Thus, in thevariety-based approach discussed herein, the subset of records used foroptimization is selected according to the variety measures associatedwith the data records. For example, in embodiments in which the varietymeasures are associated with the extent/degree of distinguishability ofrecords from each other, the selection of the records to be used in theoptimization can be one where the k records (from the available nrecords, where k<n) that provide the most distinguishability (i.e., themost diversity or variety) are selected. In some implementations, theselection of records is performed dynamically, concomitantly withreceipt of data, by deciding whether to replace an existing recordwithin a matrix structure, associated with a particular varietymeasure/score, with a newly arrived record whose variety measureindicates a higher degree of distinguishability than the existingrecord. In that situation, the previously stored record is replaced infavor of the new record. Further details about the procedure to replacerecords (to thus maintain records that increase or promote the extent ofrecord diversity) are provided below.

Computation of the variety measure (which may be performed by theadaptation section A 140) may include computing, for the each datarecord, the variety measure based on distance metric representative ofdistances between data elements for a particular signal instance (e.g.,the values representative of the samples and/or the valuesrepresentative of operating conditions for the data record for thesignal instance), and respective data elements of records (stored in thematrix) for other signal instances. The distance may be computedaccording to one or more formulation used for determining distances in amathematical hyperspace of dimension n. Other processes for computing avariety measure/score may also be used. The computed variety measurescan then be ranked, and, in implementations in which only a certainnumber (k) of the available signal instances are used for deriving theDPD coefficients, the k records with the highest variety measures/scoresmay be selected for use in the optimization process. Other criteria forselecting the k records, according to the variety measures associatedwith the data records may be used.

As noted, the collected data records, comprising input and outputsamples, and corresponding operating conditions, can be arranged in amatrix data structure, also referred to as a variety database V, asfollows:

$V = \begin{bmatrix}q_{1} & q_{2} & \ldots & q_{m} \\p_{1} & p_{2} & \ldots & p_{m} \\e_{1} & e_{2} & \ldots & e_{m}\end{bmatrix}$

where q_(i), =q_(y)[t_(i)] is a complex vector of input samplescollected for a signal i (in some examples, 5, 10, or any number ofsamples may be collected for every signal instance i), p_(i)=p[t_(i)] isthe corresponding vector of operating conditions associated with therecord corresponding to the signal instance i, ande_(i)=v[t_(i)]−y[t_(i)] is the difference between the resultantpredistorted output of the compensator (such as the compensator C 110 ofFIG. 1) and the observed output sample of the transmit chain (the e_(i)values are used for the optimization process to compute the adaptive DPDcoefficients to weight the basis functions applied to input signals u[t]provided to the input of the compensator). The variety matrix V can beof any size, but in some typical examples the number of columns, m, isless than a 1000, which allows the optimization process for theadaptation procedure to be performed, for example, through thecorrelation matrices techniques described herein. As noted, if thenumber of distinct sample records in the database (distinct i) isrelatively large, the computations complexity for optimizing the DPDcoefficients using the correlation matrices technique may be too high,and, under such circumstances, a stochastic gradient process may beemployed. The following V matrix example stored for each signal instance3 samples, and two operating condition parameters (e.g., VDD andtemperature), resulting in a matrix defining a 5-dimensional space.

$V = \begin{bmatrix}{u_{1}\left\lbrack {t + 1} \right\rbrack} & {u_{2}\left\lbrack {t + 1} \right\rbrack} & \ldots & {u_{m}\left\lbrack {t + 1} \right\rbrack} \\{u_{1}\left\lbrack {t + 0} \right\rbrack} & {u_{2}\left\lbrack {t + 0} \right\rbrack} & \ldots & {u_{m}\left\lbrack {t + 0} \right\rbrack} \\{u_{1}\left\lbrack {t - 1} \right\rbrack} & {u_{2}\left\lbrack {t - 1} \right\rbrack} & \ldots & {u_{m}\left\lbrack {t - 1} \right\rbrack} \\{p_{1}(1)} & {p_{2}(1)} & \ldots & {p_{m}(1)} \\{p_{1}(2)} & {p_{2}(2)} & \ldots & {p_{m}(2)} \\\ldots & \ldots & \ldots & \ldots\end{bmatrix}$

Generally, however, each signal instance (stored in each of the columnsof the V matrix) will include more than three (3) signal sample pointsin order to improve the accuracy and robustness of the optimizationprocess to derive the DPD coefficients, x_(k).

In some embodiments, the matrix V may be accompanied by a minimaldistance vector R, namely R=[r₁, r₂, . . . r_(m)] which maintainsvariety measures (e.g., one measure for each of the columns/records ofthe variety matrix V) that can be computed as a distance functionbetween various elements of a particular signal instance (e.g., a newlyarrived signal instance), and any of the other columns/records of thevariety matrix V. In such embodiments, the greater the distance betweenany two records, the greater the diversity score (i.e., thedistinguishability) corresponding to the records used to optimize theDPD coefficients. In some embodiments, the minimal distance R vectorentries may be combined with the V matrix (e.g., as an added row of thematrix V). Large variety measure values, as reflected by the vector R,may be indicative of a high degree of distinguishability between thecorresponding columns (which correspond to the signal instances) andthus indicative of a good distribution of the samples over the possiblespace of operating conditions. Large variety can reduce sampling bias(or conversely increase the randomization of samples) that may have beencaused if the sample instances collected are too closely lumped to eachother (i.e., their corresponding operating condition are too closelylumped, which would result in a less robust predistorter).

As noted, in some embodiments, a matrix of a predetermined size (e.g.,with k columns, and m rows, where each column represents a separatesignal instance, and each row represents values associated with a signalinstance, including the sample values and values representative ofoperating conditions) is initially populated with an initial data set(e.g., all ‘0’s), and gradually, as new samples arrive, their distance(according to one or more distance formulation) to data entries storedin the V matrix are computed, and a determination of whether the newlyarrived sample offers more diversity (relative to currently storedsampling instances) is made. If the newly arrived sample would cause ahigher diversity of data maintained in the V matrix, that newly arriveddata replaces one of the columns in the matrix V.

An example of a process to determine (according to one or more criteriathat are based on computed variety measures) if existing data within thematrix V is to be replaced by data corresponding to a newly arrived dataentry (q_(y)[t], p[t],v[t]−y[t]) is as follows.

-   -   1) Compute h_(i)=dist_(*)((q_(i), p_(i)), (q_(y)[t],p[t])) for        i=1, . . . , m, where the approximate distance dist_(*)((q, p),        ({tilde over (q)},{tilde over (p)})) denotes an easy-to-compute        measure of distance between the pairs (q, p) and ({tilde over        (q)},{tilde over (p)}). In some embodiments, h_(i) may be        derived as a maximal absolute value of difference between the        corresponding individual components of q, p, {tilde over (q)},        {tilde over (p)} in a quantized grid.    -   2) Replace each entry r_(i) of R with min{r_(i), h_(i)}.    -   3) Find the index kϵ{1, 2, . . . , m} of a minimal entry r_(k)        in the updated R. In this operation, the replacement process        identifies an entry from the updated R vector with the smallest        minimal distance. This entry will correspond to a column whose        relative distinguishability to other sample data points is low        (i.e., it is associated with a low variety measure).    -   4) Replace the k-th column of V matrix with a new column,        according to q_(k)=q_(y) [t], p_(k)=p[t], e_(k)=v[t]−y[t]    -   5) Replace the k-th entry of R with h_(i).

As noted, in some embodiments, one example of an operating conditionparameter that may be used is the age of the existing data sample. Insuch embodiments, a relatively old existing sample data instance in thematrix V may result in a large distance value (i.e., a large h value)between that old existing sample data instance and the new data samplepoint. Thus, if the new data sample point replaces the old existingsample data instance in the matrix V, the corresponding entry in the Rvector will have a relatively large h value, and consequently that justreplaced column will be less likely to be replaced by the next sampledata instance collected (i.e., because the corresponding entry is lesslikely to be the minimal entry in the R vector).

In some implementations, a decision may be made not to replace any ofthe existing columns with a new sampling data instance. For example, ifit is determined that the computed variety measure for the new samplingdata instance would result in a less diverse set of sample instances(e.g., because there is already a large group of sampling data pointsthat are similar to the newly considered sampling data point), thereplacement procedure may determine to retain all the existing records(e.g., matrix columns) and discard the newly collected sampling datainstance.

Other approaches and techniques to control (e.g., replace) the contentof the V matrix (by applying different variety criteria that are basedon computed variety measures) may be implemented. Such approaches,including the above approach to replace columns of the V matrix, areconfigured to allow the most diverse data to be kept in the V matrix.

At regular or irregular time intervals, (e.g., every second, 10 seconds,1 minute, 1 hour, etc.), an adaptation process such as the variousprocesses discussed herein may be performed using the available samplingdata points (including new sampling data points that have been added tothe V matrix since the previous update). Alternatively, in some examplesthe adaptation process may be run after certain number of updates hasbeen performed on the V matrix (e.g., after 50% of the columns of the Vmatrix have been replaced since the previously run adaptation process).As discussed herein, the adaptation process to determine DPDcoefficients to weigh basis functions may performed by re-optimizing theDPD coefficients x according to:

${E_{V}(x)} = {{\frac{\rho}{n}{x}^{2}} + {\frac{1}{m}{\sum\limits_{i = 1}^{m}{{e_{i} - {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {q_{i},p_{i}} \right)}}}}}^{2}}}}$

where m is the i-th column of the database matrix (i.e., the V matrix),and x_(k) (k=1, . . . , n) are the elements of a complexn-dimensionalized vector of the compensator (which, when adapted usingthe approaches described herein, acts as a universal compensator), withx∈

^(n).

To illustrate the effect of using a variety-based approach to selectwell distributed sample data points to perform DPD coefficientoptimization processing, consider FIG. 6A showing graphs 610 and 612depicting the simulation results for an optimization process performedwithout ensuring a good variety of samples. In this simulation, 100samples of limited variety input/output data with argument valuesrandomly spread over [0,1] were generated. The distribution of thesamples is shown in graph 610 of FIG. 6A. An optimization process to fitpolynomials of degree 3 was then performed. The graph 612 shows thefitting error (mismatch) resulting from the use of the limited varietysample points. As expected, large fitting error, ranging over the [−1,1] resulted from the fitting procedure applied to the limited varietysamples.

In contrast, FIG. 6B shows simulation results when the optimizationprocess used samples that were subject to a variety-based distributionapproach that promoted sample diversity. In this simulation, new datawas continually used to update a variety database matrix with 100records (i.e., 100 columns). The first 1000 samples (with x and yarguments) that were fed and processed by the sample selection andreplacement process (based on an approach similar to that describedabove) had a range of x∈[−1, 0], y∈[−1, 0], then 1000 samples withx∈[−1,0], y∈[0,1] were processed, and finally, 1000 samples withx∈[0,1], y∈[−1,0] were processed. As shown in graph 620 of FIG. 6B, thecoverage process (i.e., sample selection/replacement process) maintainsa reasonably uniform coverage (and thus has high diversity/varietylevel) over the whole range [−1, 1]. Consequently, and as shown in graph622, the fitting mismatch resulting from performing an optimizationprocess (similar to that applied in relation to the simulation of FIG.6A) is much improved over the resultant fitting mismatch of thesimulation results illustrated in FIG. 6A.

With reference next to FIG. 7, a flowchart of an example procedure 700for digital predistortion (particularly, to perform DPD adaptation usinga variety-based approach) is shown. The procedure 700 includescollecting 710 data for a wireless device comprising a transmit chain(e.g., similar to the transmission section F 120 depicted in FIG. 1)that includes at least one power amplifier that produces output withnon-linear distortions, with the data including data records that eachincludes input signal data (e.g., the signal u[t]) and correspondingoutput signal data (v[t] and/or y[t] signals shown in FIG. 1) for thetransmit chain, and further being associated with a set of operatingconditions values (shown as the vector p[t] in FIGS. 1 and 7). The eachdata record is associated with a 7 variety measure representative of anextent of distinguishability of the respective data record from othercollected data records. Examples of the operating conditions for theeach data record may include one or more of, for example, channelinformation associated with a corresponding channel used by the wirelessdevice to process the respective data record, a correspondingtemperature, a corresponding average power, a corresponding power supplyvoltage (V_(DD)) associated with the at least one power amplifier of thetransmit chain, a corresponding Voltage Standing Wave Ratio (VSWR)associated with the wireless device, and/or age of the each data record.

As noted, in some implementations, the predistorter may be realized inaccordance with the first technique approach discussed above. In thatapproach, adaptation of the predistorter may be implemented based onsamples that are collected in narrow subbands, rather than samplescollected under wideband conditions (e.g., in which the bandwidth of thedevice's wireless transceiver obtaining the data is substantially equalto the spectral range for which the predistorter is to be implemented).Thus, in such embodiments, collecting the data for the wireless devicemay include collecting the data in one or more spectral channels, theone or more spectral channels located within a wide band spectral range,with each of the one or more spectral channels having a respectivebandwidth smaller than a range bandwidth of the spectral range.

In some examples, each of the data records may include one or moresamples obtained by the wireless device under a particular set ofoperating conditions. The each of the data records may be maintained ina separate column of a records matrix data structure.

With continued reference to FIG. 7, the procedure 700 further includesselecting 720 at least some of the data records according to a varietycriterion computed based on the variety measure for the each datarecord. Selecting the at least some of the data records according to thevariety criterion computed based on the variety measure for the eachdata record may include selecting data records associated withrespective variety measures indicative of high distinguishability inorder to increase diversity of the data records used to compute thedigital predistortion parameters.

The procedure 700 additionally includes computing 730, based on theselected at least some of the data records, digital predistortionparameters used to control a digital predistorter of the wirelessdevice, and applying 740 the digital predistorter, configured with thecomputed digital predistortion parameters, to subsequent input signals.In some embodiments, applying the digital predistorter, configured withthe digital predistortion parameters, may include weighing basisfunctions of the digital predistorter, with the basis functionsincluding (in embodiments such as those discussed in relation to theadaptive, expanded, basis functions that are formed from a base set ofbasis functions) complex terms applied to values of input samplesprovided in the data records, and with at least some of the basisfunctions further comprising real terms applied to values of sets ofoperating conditions associated with the data records.

In some implementations, the procedure 700 may also include computing,for the each data record, the variety measure based on distance metricrepresentative of distances between data elements of a particular datarecord, to respective data elements for at least some of the collecteddata records. The computed variety measure for the each data record maybe maintained in a distance vector data structure (such as the R vectordiscussed above) separate from a data structure to store the collecteddata records.

As discussed, under the variety approach, data samples used for theadaptation procedure are occasionally replaced with new sample datarecords that may be more relevant in that they promote diversity of thesamples used in the adaptation process (in part because they are newer).Examples of a replacement procedure for data records includesoccasionally collecting additional data records, storing a particularone of the collected additional data records in a records data structurein response to a determination that a variety measure computed for theparticular one of the collected additional data records is moredistinguishable, relative to previously stored data records available atthe records data structure, than one of the previously stored datarecords, and re-computing, at regular or irregular intervals, thedigital predistortion parameters based on the stored data samplesavailable in the records data structure, including the stored particularone of the collected additional data records. In such embodiments,storing the particular one of the collected additional data records mayinclude replacing in the records data structures the one of thepreviously stored data records with the particular one of the collectedadditional data records. The procedure may also include computing acorresponding variety measure for the particular one of the collectedadditional data records, including determining for each pair of recordscomprising the particular one of the collected additional data recordsand at least one of the previously stored data records a maximalabsolute value of difference between the corresponding elements of thedata records.

The approaches described above may be used in conjunction with thetechniques described in PCT Application No. PCT/US2019/031714, filed onMay 10, 2019, titled “Digital Compensation for a Non-Linear System,”which is incorporated herein by reference. For instance, the techniquesdescribed in that application may be used to implement the actuator(referred to as the pre-distorter in the incorporated application), andto adapt its parameters, and in particular to form the actuator to beresponsive to an envelope signal or other signal related to powercontrol of a power amplifier.

In some implementations, a computer accessible non-transitory storagemedium includes a database (also referred to a “design structure” or“integrated circuit definition dataset”) representative of a systemincluding, in part, some or all of the components of a digitalpredistortion, and/or DPD adaptation implementations and processesdescribed herein. Generally speaking, a computer accessible storagemedium may include any non-transitory storage media accessible by acomputer during use to provide instructions and/or data to the computer.For example, a computer accessible storage medium may include storagemedia such as magnetic or optical disks and semiconductor memories.Generally, the database representative of the system may be a databaseor other data structure which can be read by a program and used,directly or indirectly, to fabricate the hardware comprising the system.For example, the database may be a behavioral-level description orregister-transfer level (RTL) description of the hardware functionalityin a high-level design language (HDL) such as Verilog or VHDL. Thedescription may be read by a synthesis tool which may synthesize thedescription to produce a netlist comprising a list of gates from asynthesis library. The netlist comprises a set of gates which alsorepresents the functionality of the hardware comprising the system. Thenetlist may then be placed and routed to produce a data set describinggeometric shapes to be applied to masks. The masks may then be used invarious semiconductor fabrication steps to produce a semiconductorcircuit or circuits corresponding to the system. In other examples, thedatabase may itself be the netlist (with or without the synthesislibrary) or the data set.

Unless defined otherwise, all technical and scientific terms used hereinhave the same meaning as commonly or conventionally understood. As usedherein, the articles “a” and “an” refer to one or to more than one(i.e., to at least one) of the grammatical object of the article. By wayof example, “an element” means one element or more than one element.“About” and/or “approximately” as used herein when referring to ameasurable value such as an amount, a temporal duration, and the like,encompasses variations of ±20% or ±10%, ±5%, or +0.1% from the specifiedvalue, as such variations are appropriate in the context of the systems,devices, circuits, methods, and other implementations described herein.“Substantially” as used herein when referring to a measurable value suchas an amount, a temporal duration, a physical attribute (such asfrequency), and the like, also encompasses variations of ±20% or ±10%,±5%, or +0.1% from the specified value, as such variations areappropriate in the context of the systems, devices, circuits, methods,and other implementations described herein.

As used herein, including in the claims, “or” as used in a list of itemsprefaced by “at least one of” or “one or more of” indicates adisjunctive list such that, for example, a list of “at least one of A,B, or C” means A or B or C or AB or AC or BC or ABC (i.e., A and B andC), or combinations with more than one feature (e.g., AA, AAB, ABBC,etc.). Also, as used herein, unless otherwise stated, a statement that afunction or operation is “based on” an item or condition means that thefunction or operation is based on the stated item or condition and maybe based on one or more items and/or conditions in addition to thestated item or condition.

Although particular embodiments have been disclosed herein in detail,this has been done by way of example for purposes of illustration only,and is not intended to be limit the scope of the invention, which isdefined by the scope of the appended claims. Features of the disclosedembodiments can be combined, rearranged, etc., within the scope of theinvention to produce more embodiments. Some other aspects, advantages,and modifications are considered to be within the scope of the claimsprovided below. The claims presented are representative of at least someof the embodiments and features disclosed herein. Other unclaimedembodiments and features are also contemplated.

What is claimed is:
 1. A method for digital predistortion of signalsprovided to a radio frequency (RF) transmission path configured totransmit radio signals in a plurality of subbands within a spectralrange, the method comprising: configuring a digital predistorter forpredistorting signals comprising arbitrary spectral content within thespectral range, the configuring including: acquiring data samplesrepresenting operation of the RF transmission path to transmit radiosignals in different subbands, each data sample including a digitalinput signal provided to the RF transmission path for transmission and adigital sensed signal representing a sensing of a radio transmission inresponse to the provided digital signal, the each digital input signalrepresenting spectral content concentrated in a respective singlecorresponding subband within the spectral range, and updating parametersof the digital predistorter according to the acquired data samples tomitigate non-linear characteristics of the RF transmission path;receiving a further input signal for transmission by the RF transmissionpath, the further input signal representing spectral content in aparticular subband within the spectral range; and using the configuredpredistorter to process the further input signal to yield a predistortedsignal for providing to the RF transmission path.
 2. The method of claim1, wherein the spectral range, W, comprises n RF bands of approximatelyequal-sized bandwidths.
 3. The method of claim 1, wherein acquiring theone or more data samples comprises: controllably adjusting a wirelessdevice comprising the RF transmission path to operate in one or more ofthe different subbands within the spectral range; and at each of the oneor more of the different subbands, measuring at least one set ofsamples.
 4. The method of claim 1, wherein acquiring the data samplescomprises: measuring during runtime, subsequent to an initialcomputation of the parameters of the digital predistorter, additionalsets of samples at additional subbands within the spectral range; andre-updating the parameters of the digital predistorter further based onat least some of the additional sets of samples.
 5. The method of claim1, wherein the digital predistorter is implemented in a user equipment(UE), and wherein the plurality of subbands are successively assignedbands for transmission.
 6. The method of claim 1, wherein the updatedparameters of the digital predistorter are configured to weighnon-linear functions used to predistort the further input signal,wherein the non-linear functions include complex terms that depend on aτ-dimensional complex vector q corresponding to complex input samples tothe digital distorter, and real terms that depend on a d-dimensionalreal vector p representative of values of operating condition parametersassociated with operation of the RF transmission path, wherein d isrepresentative of a number of the operating condition parametersassociated with the operation of the RF transmission path.
 7. The methodof claim 6, wherein a total number of the non-linear functions used todigitally predistort input signals is proportional to the product of anumber of terms, b, in a first set of non-linear functions, and d+1,such that the total number of non-linear functions is proportional tob·(d+1).
 8. The method of claim 1, wherein acquiring the data samplesrepresenting the operation of the RF transmission path in the differentsubbands further comprises: collecting for the one or more data samplescorresponding operating condition parameters, wherein the correspondingoperating condition parameters comprise one or more of: a correspondingtemperature of the RF transmission path, a corresponding average power,a corresponding power supply voltage (V_(DD)) associated with at leastone power amplifier of the RF transmission path, a corresponding VoltageStanding Wave Ratio (VSWR) associated with the RF transmission path, ageof the collected each of the sets of samples, or corresponding channelinformation in which the data samples are collected.
 9. The method ofclaim 1, wherein using the configured predistorter to process thefurther input signal comprises: predistorting the further input signalaccording to:${{v\lbrack t\rbrack} = {{u\lbrack t\rbrack} + {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{u}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)}}}}},{where}$${q_{u}\lbrack t\rbrack} = \begin{bmatrix}{u\lbrack t + l - 1\rbrack} \\\vdots \\{u\lbrack t + l - \tau\rbrack}\end{bmatrix}$ where v[t] is an output of the digital predistorter attime t, u[t] is an input sample to the digital predistorter at the timet, B_(k) are the non-linear functions for k=1 to n, q_(u)[t] are stacksof input samples, p[t] are d-dimensional real vectors of operatingcondition parameters at the time t, and x_(k) are the computed digitalpredistortion parameters to weigh the non-linear functions.
 10. Themethod of claim 9, wherein updating the parameters of the digitalpredistorter comprises: deriving, according to an optimization processthat is based, at least in part, on the acquired data samples measuredin the different subbands, the digital predistortion parameters, x_(k),to weigh the non-linear functions B_(k).
 11. The method of claim 10,wherein deriving according to the optimization process the parameters,x_(k), of the digital predistorter comprises: adaptively adjusting thedigital predistortion parameters, x_(k), through minimization of aregularized mean square error function E(x) according to:${{E(x)} = {{\frac{\rho}{n}{x}^{2}} + {\frac{1}{N}{\sum\limits_{t \in T}{{{v\lbrack t\rbrack} - {y\lbrack t\rbrack} - {\sum\limits_{k = 1}^{n}{x_{k}{B_{k}\left( {{q_{u}\lbrack t\rbrack},\ {p\lbrack t\rbrack}} \right)}}}}}^{2}}}}},$where ρ>0 is a regularization factor, v[t] is an output of the digitalpredistorter at the time t, and y[t] is the output of an observationreceiver coupled to an output of the RF transmission path.
 12. Themethod of claim 11, wherein adaptively adjusting the digitalpredistortion parameters, x_(k), comprises: deriving correlationmatrices G and L, when n<<100, with n being representative of the numberof non-linear functions, according to:${G = {\frac{1}{N}{\sum_{t \in T}{{B\lbrack t\rbrack}{B\lbrack t\rbrack}^{\prime}}}}},{L = {\frac{1}{N}{\sum_{t \in T}{\left( {{v\lbrack t\rbrack} - {y\lbrack t\rbrack}} \right)^{\prime}{B\lbrack t\rbrack}}}}},{where}$${{B\lbrack t\rbrack} = \begin{bmatrix}{B_{1}\left( {{q_{y}\lbrack t\rbrack},{p\lbrack t\rbrack}} \right)} \\\vdots \\{B_{1}\left( q_{y}\lbrack t\rbrack,p\lbrack t\rbrack \right)}\end{bmatrix}};$ and deriving the digital predistortion parameters,x_(k), according to:$\overset{\_}{x} = {\left( {{\left( \frac{p}{n} \right)I} + G} \right)^{- 1}{L.}}$13. The method of claim 11, wherein adaptively adjusting the digitalpredistortion parameters, x_(k), comprises: approximating the digitalpredistortion parameters, x_(k), according to a stochastic gradientprocess.
 14. The method of any of claim 1, wherein acquiring the datasamples representing operation of the RF transmission path to transmitradio signals in the different subbands comprises: selecting the datasamples from a plurality of data samples according to a varietycriterion computed based on the variety measure for the each datarecord, wherein the plurality of records are arranged in a varietydatabase structure in which each record corresponds to one of the datasamples.
 15. A linearization system to perform digital predistortion ofsignals provided to a radio frequency (RF) transmission path configuredto transmit radio signals in a plurality of subbands within a spectralrange, the system comprising: the RF transmission path comprising atleast one power amplifier that produces output with non-lineardistortions; and a digital predistorter comprising an adaptation sectionand a compensator, the digital predistorter configured to: configure thecompensator to predistort signals comprising arbitrary spectral contentwithin the spectral range, including: acquire data samples representingoperation of the RF transmission path to transmit radio signals indifferent subbands, each data sample including a digital input signalprovided to the RF transmission path for transmission and a digitalsensed signal representing a sensing of a radio transmission in responseto the provided digital signal, the each digital input signalrepresenting spectral content concentrated in a respective singlecorresponding subband within the spectral range, and update parametersof the digital predistorter according to the acquired data samples tomitigate non-linear characteristics of the RF transmission path; receivea further input signal for transmission by the RF transmission path, thefurther input signal representing spectral content in a particularsubband within the spectral range; and use the configured compensator toprocess the further input signal to yield a predistorted signal forproviding to the RF transmission path.
 16. The system of claim 15,wherein the digital predistorter configured to acquire the data samplesis configured to: controllably adjust a wireless device comprising theRF transmission path to operate in one or more of the different subbandswithin the spectral range; and at each of the one or more of thedifferent subbands, measure at least one set of samples.
 17. The systemof claim 15, wherein the digital predistorter configured to acquire thedata samples is configured to: measure during runtime, subsequent to aninitial computation of the parameters of the digital predistorter,additional sets of samples at additional subbands within the spectralrange; and re-update the parameters of the digital predistorter furtherbased on at least some of the additional sets of samples.
 18. The systemof claim 15, wherein the digital predistorter configured to use thecompensator is configured to: derive from a first set of non-linearfunctions an expanded set of non-linear functions of the digitalpredistorter, the expanded set of non-linear functions including (d+1)groups of non-linear functions, with d being representative of a numberof operating condition parameters, wherein a first group of the expandedset of non-linear functions includes the first set of non-linearfunctions without any modification, and wherein each of the remaining dgroups of the expanded set of non-linear functions is determined as atransformation of the first set of non-linear functions according to afunction of at least one of the operating condition parameters; andweigh the expanded set of non-linear functions with the updated digitalpredistortion parameters, to process the further input signal.
 19. Thesystem of claim 15, wherein the digital predistorter configured toacquire the data samples representing operation of the RF transmissionpath to transmit radio signals in the different subbands is configuredto: select the data samples from a plurality of data samples accordingto a variety criterion computed based on the variety measure for theeach data record, wherein the plurality of records are arranged in avariety database structure in which each record corresponds to one ofthe one or more data samples.
 20. A non-transitory machine-readablemedium storing a design structure comprising elements that, whenprocessed in a computer-aided design system, generate amachine-executable representation of a linearization system that is usedto fabricate hardware comprising: a radio frequency (RF) transmissionpath circuit comprising at least one power amplifier that producesoutput with non-linear distortions; and a digital predistorter circuitcomprising an adaptation section and a compensator, the digitalpredistorter configured to: configure the compensator to predistortsignals comprising arbitrary spectral content within the spectral range,including: acquire data samples representing operation of the RFtransmission path circuit to transmit radio signals in differentsubbands, each data sample including a digital input signal provided tothe RF transmission path circuit for transmission and a digital sensedsignal representing a sensing of a radio transmission in response to theprovided digital signal, the each digital input signal representingspectral content concentrated in a respective single correspondingsubband within the spectral range, and update parameters of the digitalpredistorter according to the acquired data samples to mitigatenon-linear characteristics of the RF transmission path circuit; receivea further input signal for transmission by the RF transmission pathcircuit, the further input signal representing spectral content in aparticular subband within the spectral range; and use the configuredcompensator to process the further input signal to yield a predistortedsignal for providing to the RF transmission path circuit.